Menyelesaikan Masalah Suapan Talian Semasa Menulis ke Fail dalam PHP
Menghadapi masalah dengan suapan baris semasa menulis ke fail dalam PHP? Isu timbul apabila menggunakan 'n' sebagai suapan baris sedangkan ia sepatutnya "n" sebaliknya.
Coretan kod di bawah menunjukkan masalah:
$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);
Dalam kod ini, baris suapan 'n' disertakan dalam petikan tunggal, yang menghalang urutan pelarian daripada dikenali. Untuk menyelesaikan masalah ini, cuma gantikan 'n' dengan "n" untuk mengeluarkan suapan talian dengan betul.
$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);
Mengenai pilihan penamat talian, sistem pengendalian yang berbeza mempunyai konvensyen yang berbeza. Windows menggunakan "rn," manakala sistem berasaskan Unix menggunakan "n." Untuk konsistensi, anda dinasihatkan untuk memilih satu konvensyen, seperti "n," dan buka fail anda dalam mod binari (fopen harus menyatakan "wb" bukannya "w").
Atas ialah kandungan terperinci Mengapa Kod Penulisan Fail PHP Saya Mencipta Isu Suapan Baris?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!