Amaran Penamatan PHP 5.6: Mendedahkan Kekeliruan yang Sekeliling $HTTP_RAW_POST_DATA
Setelah menaik taraf kepada PHP 5.6.0, banyak pembangun menghadapi masalah berterusan amaran: "Mengisi secara automatik $HTTP_RAW_POST_DATA telah ditamatkan..." Walau bagaimanapun, andaian biasa bahawa amaran ini dicetuskan dengan menggunakan pembolehubah $HTTP_RAW_POST_DATA adalah tidak tepat.
Punca amaran terletak pada nilai konfigurasi always_populate_raw_post_data, yang lalai kepada 0 . Walaupun namanya, menetapkan nilai ini kepada 0 tidak melumpuhkan sepenuhnya populasi $HTTP_RAW_POST_DATA. Sebaliknya, ia hanya menghalang populasi apabila jenis kandungan didaftarkan atau apabila kaedah permintaan tidak POST.
Menurut PHP RFC, tetapan always_populate_raw_post_data kepada -1 "menyahdayakan sepenuhnya mengisi $GLOBALS[HTTP_RAW_POST_DATA], yang itulah yang ingin dicapai oleh ramai pembangun apabila menghadapi perkara ini amaran.
Untuk menyelesaikan masalah di sumbernya dan menyekat amaran, tetapkan always_populate_raw_post_data kepada -1 dalam php.ini Ini tidak lebih daripada menyembunyikan amaran ia menghalang PHP daripada mengisi $HTTP_RAW_POST_DATA, menghapuskan konfigurasi yang tidak digunakan. .
Atas ialah kandungan terperinci Mengapa PHP 5.6 Mengeluarkan Amaran Penamatan untuk `$HTTP_RAW_POST_DATA` dan Bagaimana Saya Boleh Membetulkannya?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!