Mengalih keluar BOM daripada Fail CSV yang Diimport
Apabila mengimport fail .csv, adalah perkara biasa untuk menemui BOM (Byte Order Mark), yang boleh mengganggu pemprosesan data. Isu ini boleh diselesaikan dengan mengalih keluar BOM daripada fail.
Satu kaedah untuk mengalih keluar BOM menggunakan ungkapan biasa:
$new_file = preg_replace('/[\x00-\x1F\x80-\xFF]/', '', $file);
Walau bagaimanapun, kaedah ini mungkin tidak sentiasa boleh dipercayai. Pendekatan alternatif menggunakan fungsi file_get_contents disyorkan:
$content = file_get_contents($filepath); file_put_contents($filepath, str_replace("\xEF\xBB\xBF", '', $content));
Pendekatan ini menimpa fail dengan data yang dialih keluar BOM, membolehkan anda meneruskan pemprosesan fail tanpa gangguan BOM.
Walau bagaimanapun, menggunakan file_put_contents menutup fail, yang mungkin mengganggu skrip sedia ada anda. Untuk menyelesaikan masalah ini, gunakan fopen untuk membuka semula fail selepas menulis:
$file = fopen($filepath, "r") or die("Error opening file");
Dengan melaksanakan teknik ini, anda boleh mengalih keluar BOM daripada fail .csv yang diimport dengan berkesan dan memastikan pemprosesan data yang lancar dalam skrip anda.
Atas ialah kandungan terperinci Bagaimana untuk Mengalih keluar BOM daripada Fail CSV yang Diimport?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!