Ich bin neu bei PHP, versuche, über HTML-Formulare zu lernen, aber dieses kleine Problem mit Newline. Der Code unten soll in einem Tabellennamen durch html nehmen, schreiben Sie dann die Eingabe in eine Textdatei:fwrite erstellt keine neue Zeile trotz Verwendung von " n"
html
<form action="maketable.php" method="post" name="input[]">
<fieldset>
<legend>Table Info</legend>
Enter Table Name:
<br>
<input type="text" name="input[]">
<br>
Enter Value A:
<br>
<input type="text" name="input[]">
<br>
Enter Value B:
<br>
<input type="text" name="input[]">
<br>
<input type="submit">
</fieldset>
</form>
php
$file = fopen("Tables.txt", "w+");
if(isset($_POST["input"])) {
$input = $_POST["input"];
$table = $input[0];
$A = $input[1];
$B = $input[2];
fwrite($file, $table . "\n");
fwrite($file, $A . "\n");
fwrite($file, $B);
} else {
fwrite($file, "table not set");
}
fclose($file);
Wenn ich in die Form zu bringen " Tabelle "," A "," B ". Die Textdatei zeigt
tableAB
Ich möchte diese Variablen bekommen eine neue Zeile zwischen ihnen haben, aber . "\n"
scheint nicht zu funktionieren. Was mache ich falsch?
Wie überprüft man das? Liest du die Datei mit einem Windows Editor wie Notepad? Oder vielleicht in einem Webbrowser angezeigt? –
Ich habe dies mit einem Notizblock überprüft. Habe es mir in einem Browser angeschaut, und dein Recht, es funktioniert. Danke für die schnelle Resonanz –
Wenn du Cross-Plattform schreiben willst, benutze stattdessen 'PHP_EOL'. Wenn Sie '\ n' verwenden, erkennt Windows es nicht als Zeilenumbruch. Eine neue Zeile in Windows ist '\ r \ n'. Marks Kommentar ist hier sehr relevant. –