Rumah > pembangunan bahagian belakang > tutorial php > Bagaimana untuk Mengeluarkan Urutan BOM UTF-8 dengan Amanah daripada Output PHP?

Bagaimana untuk Mengeluarkan Urutan BOM UTF-8 dengan Amanah daripada Output PHP?

Mary-Kate Olsen
Lepaskan: 2024-12-08 08:30:12
asal
708 orang telah melayarinya

How to Reliably Remove UTF-8 BOM Sequences from PHP Output?

Cara Mengeluarkan Berbilang Urutan BOM UTF-8 dengan Berkesan

Apabila menghadapi masalah dengan memaparkan output HTML mentah daripada fail templat PHP, adalah penting untuk menangani kehadiran urutan UTF-8 BOM (Byte Order Mark). Isu ini boleh nyata kerana Firefox tidak dapat menerima output.

Coretan kod PHP berikut cuba mengalih keluar jujukan BOM tetapi mungkin tidak berkesan sepenuhnya:

function fetch($name) {
    // ...
    if (substr($t, 0, 3) == b'\xef\xbb\xbf') {
        $t = substr($t, 3);
    }
    return $t;
}
Salin selepas log masuk

Untuk memastikan pengalihan keluar sepenuhnya daripada semua jujukan BOM, pertimbangkan untuk menggunakan pendekatan yang lebih mantap berikut:

function remove_utf8_bom($text)
{
    $bom = pack('H*','EFBBBF');
    $text = preg_replace("/^$bom/", '', $text);
    return $text;
}
Salin selepas log masuk

Fungsi ini menggunakan ungkapan biasa (preg_replace) untuk memadankan dan mengalih keluar sebarang contoh urutan BOM UTF-8 pada permulaan rentetan (/^$bom/). Dengan memastikan penyingkiran semua BOM, output harus mudah diterima oleh Firefox dan penyemak imbas lain.

Atas ialah kandungan terperinci Bagaimana untuk Mengeluarkan Urutan BOM UTF-8 dengan Amanah daripada Output PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

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