Dalam pembangunan PHP, ramai pembangun telah menghadapi masalah biasa: Amaran PHP: Tidak boleh mengubah suai maklumat pengepala Masalah ini mungkin berlaku dalam beberapa kod, terutamanya apabila menggunakan fungsi pengepala. Tingkah laku ini biasanya disebabkan oleh isu penggunaan penimbal output. Jadi bagaimana untuk menyelesaikan masalah ini? Artikel ini akan memperkenalkan anda kepada beberapa penyelesaian.
Penyelesaian 1: Berhati-hati mengecualikan aksara ruang dan teg HTML
Apabila menggunakan fungsi pengepala dalam fail PHP, ralat yang paling biasa ialah terdapat ruang di hadapan fungsi pengepala, atau terdapat output lain (seperti pernyataan gema ), mungkin juga terdapat teg HTML yang berlebihan akan menyebabkan PHP Amaran: Tidak boleh mengubah suai ralat maklumat pengepala. Penyelesaiannya adalah untuk mencari fail sumber, mengalih keluar aksara ruang tambahan dan teg HTML, dan memastikan tiada apa-apa yang dikeluarkan di hadapan fungsi pengepala.
Penyelesaian 2: Gunakan fungsi ob_start
Fungsi ob_start ialah fungsi yang digunakan untuk memulakan penimbal output dan boleh digunakan untuk menyelesaikan masalah PHP Amaran: Tidak boleh mengubah suai maklumat pengepala. Anda hanya perlu menambah fungsi ob_start() pada permulaan kod PHP untuk memulakan penimbal output. Dengan caching data, PHP boleh mengosongkan semua output sebelum akhirnya mengeluarkan fungsi pengepala untuk mengelakkan masalah mengubah suai maklumat pengepala. Kod sampel adalah seperti berikut:
<?php ob_start(); // your PHP code here header("Location: http://www.example.com/"); exit; ?>
Penyelesaian ketiga: Tetapkan maklumat pengepala di bahagian atas fail PHP
Penyelesaian lain ialah menetapkan maklumat pengepala di bahagian atas fail PHP. Pendekatan ini mengelakkan masalah apabila fungsi pengepala perlu dipanggil dalam kod berikutnya, kerana semua maklumat pengepala telah ditetapkan di bahagian atas. Kod sampel adalah seperti berikut:
<?php header("Content-Type: text/html; charset=UTF-8"); header("Cache-Control: no-cache, must-revalidate"); ?>
Apabila menggunakan fungsi pengepala dalam PHP, perlu diperhatikan bahawa fungsi pengepala mesti dipanggil sebelum skrip mengeluarkan kandungan. Jika tidak, mesej ralat PHP Amaran: Tidak boleh mengubah suai maklumat pengepala akan berlaku.
Ringkasan:
PHP Amaran: Tidak boleh mengubah suai maklumat pengepala adalah masalah PHP biasa, biasanya disebabkan oleh penggunaan penimbal output yang salah. Artikel ini memperkenalkan tiga penyelesaian:
Tidak kira kaedah yang digunakan di sana, anda perlu memastikan kaedah yang digunakan di sana. tiada maklumat pengepala sebelum memanggil fungsi pengepala sebarang kandungan output. Dengan cara ini, anda boleh mengelakkan masalah mengubah suai maklumat pengepala dan memastikan operasi normal kod PHP.
Atas ialah kandungan terperinci Amaran PHP: Tidak boleh mengubah suai penyelesaian maklumat pengepala. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!