Mengapa Watak 65279 Muncul dalam Respons PHP Saya?

Susan Sarandon
Lepaskan: 2024-11-07 12:01:03
asal
844 orang telah melayarinya

Why Does Character 65279 Appear in My PHP Response?

Memahami Misteri Watak 65279 Echo dalam PHP

Walaupun menghadapi isu yang membingungkan semasa panggilan balik AJAX, di mana teks dipaparkan dengan betul dalam amaran tetapi gagal dipadankan dalam pernyataan 'jika', pelakunya ialah watak tersembunyi pada permulaan teks respons. Menariknya, watak ini mempunyai kod aksara 65279.

Penyiasatan lanjut mendedahkan bahawa watak ini, yang berasal daripada kod PHP sebelah pelayan, ialah watak kawalan UTF-8 yang tidak kelihatan yang bertujuan untuk mentakrifkan pengekodan respons. Walau bagaimanapun, persoalan timbul: mengapa watak ini dikumandangkan secara tidak sengaja?

Setelah memeriksa kod PHP dengan lebih dekat, pernyataan 'gema' mudah digunakan untuk mengeluarkan respons. Walau bagaimanapun, ia menjadi jelas bahawa Notepad, yang digunakan untuk menyimpan fail PHP, secara halus menambah Byte Order Mark (BOM) pada fail tersebut. BOM ini terdiri daripada tiga bait: EF BB BF, dan tujuannya adalah untuk menunjukkan bahawa pengekodan fail adalah UTF-8 dengan susunan bait besar-endian.

Walaupun PHP secara amnya mengendalikan BOM tanpa isu, masalah boleh timbul apabila satu fail PHP dimasukkan ke dalam fail yang lain. Dalam kes sedemikian, BOM boleh menyebabkan rentetan dipaparkan dengan aksara 65279 yang didahulukan padanya, membawa kepada tingkah laku yang tidak dijangka dalam perbandingan.

Syukurlah, terdapat cara untuk mengelakkan isu ini:

  1. Gunakan Notepad dan "Encode dalam UTF-8 tanpa BOM": Notepad menawarkan pilihan untuk menyimpan fail dalam pengekodan UTF-8 tanpa menambah BOM, menyelesaikan masalah dengan berkesan.
  2. Simpan fail PHP yang disertakan dalam pengekodan ANSI dalam Notepad: Walaupun pilihan ini sesuai jika fail tidak mengandungi aksara lanjutan, ia mungkin tidak sesuai dalam semua situasi.

Dengan melaksanakan ini penyelesaian, pembangun boleh menghalang penampilan watak 65279 yang tidak diingini dalam respons PHP mereka, memastikan perbandingan dan operasi rentetan lain berfungsi seperti yang dimaksudkan.

Atas ialah kandungan terperinci Mengapa Watak 65279 Muncul dalam Respons PHP Saya?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!