php 7 auf RasPi, file_put_contents mit FILE_APPEND Link zum Profil von TS 20.05.2019 09:37 php 7 auf RasPi, file_put_contents mit FILE_APPEND, [edit] Hello, ich bin gerade sehr irritiert. Das kleine Skript schreibt Temperaturdaten in eine Datei. ~~~php <?php $text = file_get_contents('/sys/bus/w1/devices/28-011432fac57a/w1_slave'); $_data = explode(' ', $text); $temp = substr(array_pop($_data), 2, 5); ### alternativ "..., 2)" $out = date('Ymd h:i:s ') . $temp . PHP_EOL; echo $out; file_put_contents('/home/pi/Messungen/s1-temp.txt', $out, FILE_APPEND); ?> ~~~ Ich hatte zuerst vermutet, dass in der w1_slave bereits ein EOL stehen würde... Leider wird in der Datei ein doppeltes 0x0A am Zeilenende eingefügt. Das lässt mich vermuten, dass file_put_contents() mit Flag FILE_APPEND bereits selbst ei 0x0A schreibt, also wieder den guten alten Textmodus benutzt. Das war mMn in PHP 6 nicht so. Da aber auch LOCK_EX erwähnt wird in den Beispielen, wäre das unlogisch. Der gute alte Textmodus benötigte kein LOCK_EX, da das OS das bereits selbständig geregelt hat. Ich habe leider im Moment nur das Tablet und den RasPi zum Testen. I##[edit]: ok, das EOL hing, wie vermutet, noch am $temp dran. Irgendwie hat der Raspi aber wohl das geänderte Skript (substr mit Längf.enangabe) nicht benutzt, sondern noch ein Bpaarmal das alte (ohne Längenangabe beim substr). Muss mal g?enauer untersuchen, wenn ich wiedef am PC sitze Glück Auf Tom vom Berg -- Es gibt nichts Gutes, außer man tut es! Das Leben selbst ist der Sinn.