Ich möchte ein Array in eine Datei drucken.
Ich möchte, dass die Datei genau so aussieht, wie ein Code wie dieser aussieht.
print_r ($abc);
Angenommen, $ abc ist ein Array.
Gibt es eine einzeilige Lösung dafür und keine reguläre für jeden Look?
PS - Ich verwende derzeit Serialize, möchte aber die Dateien lesbar machen, da die Lesbarkeit mit serialisierten Arrays ziemlich schwierig ist.
php
serialization
Atif Mohammed Ameenuddin
quelle
quelle
implode
das Array mitPHP_EOL
und schreiben Sie die resultierende Zeichenfolge in die Datei.var_export
ist besser, wenn Sie die Datei in PHP-Syntax speichern möchten.print_r
kehrt zurück, kehrt[m] => monkey
abervar_export
zurück'm' => 'monkey'
Verwenden Sie einfach
print_r
; ) Lesen Sie die Dokumentation :Das ist also eine Möglichkeit:
quelle
file_put_contents($file, print_r($array, true), FILE_APPEND)
quelle
Du könntest es versuchen:
quelle
true
zu var_export hinzu, da sonst kein Inhalt zum Schreiben in die Datei vorhanden ist.Schnell und einfach:
quelle
Sie können dies
$myArray
als Array versuchenquelle
Ich habe gerade diese Funktion geschrieben, um ein Array als Text auszugeben:
Sollte ein gut formatiertes Array ausgeben.
WICHTIGE NOTIZ:
Vorsicht vor Benutzereingaben.
Dieses Skript wurde für den internen Gebrauch erstellt.
Wenn Sie dies für den öffentlichen Gebrauch verwenden möchten, müssen Sie eine zusätzliche Datenüberprüfung hinzufügen, um das Einfügen von Skripten zu verhindern.
Dies ist nicht narrensicher und sollte nur mit vertrauenswürdigen Daten verwendet werden.
Die folgende Funktion gibt ungefähr Folgendes aus:
Hier ist die Funktion (Hinweis: Die Funktion ist derzeit für die oop-Implementierung formatiert.)
Alternativ können Sie dieses Skript verwenden, das ich vor einiger Zeit auch geschrieben habe:
Dieser ist schön, um Teile eines Arrays zu kopieren und einzufügen.
(Mit serialisierter Ausgabe wäre dies nahezu unmöglich.)
Nicht die sauberste Funktion, aber sie erledigt den Job.
Dieser wird wie folgt ausgegeben:
Achten Sie auch auf Benutzereingaben. Hier ist der Code.
quelle
Verwenden
file_put_contents('file',$myarray);
Sie einfach file_put_contents (). Funktioniert auch mit Arrays.quelle
Folgendes habe ich in den letzten 17 Stunden gelernt, um mein Problem bei der Suche nach einer ähnlichen Lösung zu lösen.
Ressourcen:
http://php.net/manual/en/language.types.array.php
Spezifischer Code:
Was ich von oben genommen habe, $ arr [obst] kann in "" (doppelte Anführungszeichen) gehen und von PHP als String zur weiteren Verarbeitung akzeptiert werden.
Die zweite Ressource ist der Code in einer der obigen Antworten:
Dies ist das zweite, was ich nicht wusste, FILE_APPEND.
Ich habe versucht, Inhalte aus einer Datei abzurufen, die gewünschten Daten zu bearbeiten und die Datei mit neuen Daten zu aktualisieren, jedoch nach dem Löschen alter Daten.
Jetzt muss ich nur noch wissen, wie man Daten aus einer Datei löscht, bevor ich aktualisierte Daten hinzufüge.
Über andere Lösungen:
Nur damit es für andere Menschen hilfreich sein kann; Als ich var_export oder Print_r oder Serialize oder Json.Encode ausprobierte , bekam ich entweder Sonderzeichen wie => oder; oder 'oder [] in der Datei oder eine Art Fehler. Versuchte zu viele Dinge, um sich an alle Fehler zu erinnern. Wenn jemand sie erneut versuchen möchte (möglicherweise ein anderes Szenario als meins), kann er Fehler erwarten.
Informationen zum Lesen, Bearbeiten und Aktualisieren von Dateien:
Ich habe die Funktion fgets () verwendet, um ein Datei-Array in eine Variable ($ array) zu laden, und dann unset ($ array [x]) (wobei x für die gewünschte Array-Nummer, 1,2,3 usw. steht) verwendet, um ein bestimmtes Array zu entfernen. Verwenden Sie dann array_values () , um das Array neu zu indizieren und in eine andere Variable zu laden, und verwenden Sie dann eine while-Schleife und höhere Lösungen, um das Array (ohne Sonderzeichen) in die Zieldatei zu kopieren.
quelle
Unten Sollte gut und besser lesbar funktionieren
<pre>
quelle
Allerdings muss op ein Array schreiben, wie es in der Datei ist. Ich habe diese Seite gelandet, um eine Lösung zu finden, bei der ich ein Array in eine Datei schreiben und später mit PHP leicht wieder lesen kann.
Ich habe selbst eine Lösung gefunden, indem ich json_encode verwendet habe, sodass jeder andere hier nach dem gleichen Code sucht:
als lesen
quelle
test.php
index.php
quelle