Mengendalikan Muat Naik Fail Melebihi post_max_size PHP
Apabila mengendalikan muat naik fail dengan PHP, melebihi had post_max_size boleh menimbulkan cabaran. Tidak seperti upload_max_filesize, yang mengembalikan saiz fail 0 untuk fail bersaiz besar, post_max_size mungkin menyebabkan skrip anda gagal secara senyap tanpa sebarang mesej ralat.
Cara Mengesan Ralat Had Saiz Fail
1. Semak Superglobals Kosong:
Menurut dokumentasi PHP, jika data siaran melebihi post_max_size, superglobal $_POST dan $_FILES akan kosong. Anda boleh mengesan ini dengan menghantar parameter pertanyaan kepada borang yang hanya akan ditetapkan apabila $_POST tidak kosong.
if (isset($_GET['processed'])) { // Perform file upload processing } else { // Display blank form }
2. Bandingkan dengan $_SERVER['CONTENT_LENGTH']:
Pendekatan lain ialah membandingkan pengepala CONTENT_LENGTH, yang merangkumi bukan sahaja data fail tetapi juga jujukan berbilang bahagian, dengan tetapan post_max_size.
if ($_SERVER['CONTENT_LENGTH'] > ini_get('post_max_size')) { // Error handling for oversized file }
Nota: Kaedah ini membolehkan anda mengesan fail bersaiz besar tanpa PHP menghasilkan ralat. Walau bagaimanapun, adalah penting untuk melaraskan tetapan ini dalam fail php.ini anda untuk mengelakkan kemungkinan isu keselamatan atau kemerosotan prestasi disebabkan oleh fail yang besar.
Atas ialah kandungan terperinci Bagaimana untuk Mengesan Apabila Muat Naik Fail Melebihi Had `post_max_size` PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!