Schreiben Sie eine neue Zeile zur Datei in PHP (line feed)
Mein code:
$i = 0;
$file = fopen('ids.txt', 'w');
foreach ($gemList as $gem)
{
fwrite($file, $gem->getAttribute('id') . '\n');
$gemIDs[$i] = $gem->getAttribute('id');
$i++;
}
fclose($file);
Für einige Grund, es zu schreiben \n
als string, also die Datei sieht wie folgt aus:
40119\n40122\n40120\n42155\n36925\n45881\n42145\n45880
Aus Google ' Ing es mir sagt, zu verwenden \r\n
, aber \r
ist ein carriage return, das scheint nicht das zu sein, was ich tun möchte. Ich will nur die Datei wie folgt Aussehen:
40119
40122
40120
42155
36925
45881
42145
45880
Dank.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ersetzen
'\n'
mit"\n"
. Die escape-Sequenz nicht erkannt, wenn Sie verwenden'
.Sehen die Handbuch.
Für die Frage, wie zu schreiben, Zeilenenden, siehe die Anmerkung hier. Im Grunde genommen, verschiedene Betriebssysteme haben unterschiedliche Konventionen für Zeilenenden. Windows verwendet "\r\n" auf unix-basierten Betriebssystemen verwenden Sie "\n". Sie sollten halten Sie sich an ein übereinkommen (würd ich wählte "\n") und öffnen Sie Ihre Datei im Binär-Modus (
fopen
bekommen sollten, "wb", nicht "w").Verwenden
PHP_EOL
die Ausgänge\r\n
oder\n
je nach OS.\n
es sei denn, Sie möchten, öffnen Sie die Datei in einem bestimmten OS - wenn dem so ist, verwenden Sie die neue Kombination des OS und nicht das OS Sie PHP auf (PHP_EOL
).PHP_EOL ist eine vordefinierte Konstante in PHP seit PHP 4.3.10 und PHP 5.0.2. Finden Sie die Handbuch posting:
Mit diesem sparen Sie zusätzliche Codierung auf cross-Plattform-Entwicklungen.
IE.
Wenn Sie durchgeschleift zweimal Sie sehen würde, in 'somefile':
Können Sie auch
file_put_contents()
: