2017-03-02 5 views
0

Ich habe einen Webservice geschrieben, der (nach Authentifizierung natürlich) Dateiinhalte per Post übertragen kann, die in eine Datei geschrieben wird. Alles funktioniert einwandfrei, es sei denn, die letzten Zeichen sind ein Tab oder ein Tab, gefolgt von einem Zeilenumbruch, die beide entfernt werden. Dies verursacht schwerwiegende Probleme mit CSV-Dateien, getrennt durch eine Registerkarte.PHP: file_put_contents() löscht letzte Registerkarte ( t)

A Ich kenne den Dateiinhalt nicht im Voraus, ich kann nicht einfach manuell am Ende einen Tab hinzufügen.

Multipart/Formulardaten für einen Dateiupload sind nicht möglich, da der andere Client dies nicht unterstützt.

fopen + fwritwe produzieren genau das gleiche Problem .. Irgendwelche Möglichkeiten in dieser Umgebung?

+0

Können Sie Code posten? Ich versuche dein Problem zu reproduzieren, aber ich kann nicht. Dieses Beispiel für Code funktioniert gut. 'file_put_contents ('/ Pfad/zu/Datei.txt'," Hallo Welt \ t ");' –

Antwort

0

Verwenden Sie die Funktion trim(), um die Vorder- und Hinterräume zu trimmen. Bei Verwendung von rtrim() können Sie auch den Char angeben, den Sie löschen möchten.

file_put_contents($filepath, rtrim("with tab\t", "\t")); 
Verwandte Themen