Mengatasi Had Saiz Fail PHP Semasa Membaca Fail Besar
Dalam PHP, menghadapi isu membaca fail besar boleh mengecewakan, terutamanya apabila menggunakan fopen untuk membuka fail yang melebihi saiz sederhana. Walaupun benar bahawa menyusun semula PHP dengan bendera -D_FILE_OFFSET_BITS=64 boleh memanjangkan had saiz fail kepada lebih 20 gigabait, ia tidak sepatutnya diperlukan untuk fail sekecil 6 megabait.
Apabila mengalami kesukaran membuka fail besar , terdapat beberapa faktor yang perlu dipertimbangkan:
Tamat masa Tetapan:
Sahkan tetapan tamat masa skrip. Nilai lalai biasanya sekitar 30 saat dan jika membaca fail mengambil masa lebih lama daripada itu, ia mungkin mencetuskan ralat tamat masa.
Had Memori:
PHP juga mempunyai had memori yang boleh dilampaui apabila cuba membaca fail besar ke dalam tatasusunan. Memantau log ralat untuk amaran ingatan adalah disyorkan.
Pembacaan Bertambah dengan fgets:
Dalam kes di mana tamat masa atau isu ingatan tidak jelas, pertimbangkan untuk menggunakan fgets untuk membaca fail baris demi baris, memproses setiap baris secara berurutan. Pendekatan ini amat berkesan untuk fail yang sangat besar.
Pengesahan Laluan:
Dalam kes di mana fopen mengembalikan palsu tanpa mesej ralat, laluan yang ditentukan untuk $rawfile mungkin tidak betul berbanding dengan lokasi skrip dijalankan. Cuba sediakan laluan mutlak untuk nama fail.
Petua Lain:
Atas ialah kandungan terperinci Bagaimana Saya Boleh Mengatasi Had Saiz Fail PHP Apabila Membaca Fail Besar?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!