Menghapuskan Gema Watak 65279 dalam PHP
Apabila menghadapi pulangan palsu apabila membandingkan teks permintaan XMLHTTP dengan rentetan, adalah penting untuk pertimbangkan kemungkinan "watak halimunan" pada permulaan rentetan, selalunya diwakili oleh kod aksara 65279. Watak ini ialah watak kawalan UTF-8 yang menandakan pengekodan besar-endian atau kecil-endian.
Punca isu ini terletak pada penambahan aksara BOM (Byte Order Mark) oleh Windows Notepad apabila menyimpan fail dalam pengekodan UTF-8. BOM ini terdiri daripada 3 bait: EF BB BF. Walaupun PHP lazimnya mengabaikan aksara ini, isu timbul apabila memasukkan satu fail PHP ke dalam fail PHP yang lain, menyebabkan rentetan dipaparkan dengan aksara 65279 didahulukan.
Untuk menyelesaikan isu ini, disyorkan untuk menggunakan editor teks alternatif seperti Notepad dan pilih Pilihan "Enkod dalam UTF-8 tanpa BOM" semasa menyimpan fail. Ini menghalang Notepad daripada menambah aksara BOM.
Sebagai alternatif, anda boleh menyimpan fail PHP yang lain dengan pengekodan ANSI dalam Notepad. Pendekatan ini sesuai jika tiada aksara lanjutan digunakan dalam fail. Dengan melaksanakan penyelesaian ini, anda boleh menghapuskan gema aksara 65279 dengan berkesan dan memastikan perbandingan rentetan yang tepat.
Atas ialah kandungan terperinci Mengapa Perbandingan Rentetan PHP Saya Gagal dan Bagaimana Saya Membetulkannya?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!