Dalam proses kerjanya, php-scripts dapat menampilkan hasil seperti script dijalankan, atau mengumpulkan data, menunggu eksekusi script selesai dan script selesai. Pilihan salah satu opsi ini tergantung pada nilai yang ditetapkan dalam pengaturan juru bahasa php ke variabel yang bertanggung jawab untuk buffering output data. Ada beberapa cara untuk mengubahnya.
instruksi
Langkah 1
Jika Anda perlu menonaktifkan buffering output untuk semua skrip php yang berjalan di server atau di situs, cara paling benar untuk melakukannya adalah melalui file php.ini. Saat meluncurkan setiap skrip, penerjemah bahasa php membaca pengaturan dari file konfigurasi ini, jadi menempatkan di dalamnya arahan untuk menonaktifkan buffering output dari output skrip adalah solusi paling optimal. Buka file di editor teks apa pun dan gunakan dialog pencarian untuk menemukan arahan yang disebut output_buffering. Nilainya dapat berupa integer atau variabel logis (Aktif atau Nonaktif), jadi alih-alih nilai default, masukkan Nonaktif atau 0. Jika arahan ini tidak ada dalam file konfigurasi, tambahkan baris tambahan ke akhir entri:
output_buffering = Mati
Langkah 2
Jika Anda perlu menonaktifkan buffering output untuk skrip dari folder terpisah atau sekelompok subfolder, lebih baik melakukannya melalui file htaccess. Temukan di direktori yang diinginkan dan buka di editor teks. Jika belum ada file seperti itu, buat yang baru. Direktif yang harus ditambahkan mirip dengan yang dijelaskan pada langkah sebelumnya, tetapi sebelum itu Anda perlu memberi tanda bahwa ini adalah salah satu pengaturan php. Seluruh baris akan terlihat seperti ini:
php_flag output_buffering mati
Tempatkan file htaccess yang dibuat di folder teratas hierarki direktori tempat direktif akan dieksekusi.
Langkah 3
Untuk menonaktifkan buffering dalam satu skrip php, gunakan salah satu fungsi bawaan bahasa ini. ob_get_flush () mengembalikan konten buffer saat ini, lalu men-nolkannya dan mematikan buffering keluaran. ob_end_flush() melakukan hal yang sama, tetapi tidak mengembalikan konten buffer saat ini ke variabel yang memanggilnya, tetapi mengirimkannya ke perangkat output. Ob_end_clean() cukup menghapus data saat ini sebelum menonaktifkan buffering. Saat menggunakan salah satu fungsi ini, jangan lupa untuk mengaktifkan kembali buffering - fungsi ob_start () adalah untuk ini.