Menyemak Muat Naik Fail Pengguna dalam PHP
Bagaimana anda boleh menentukan sama ada pengguna telah memuat naik fail dalam PHP, walaupun muat naik adalah pilihan ?
Penyelesaian:
1. Gunakan is_uploaded_file()
Untuk menyemak sama ada fail telah dimuat naik, gunakan:
<code class="php">if(!file_exists($_FILES['myfile']['tmp_name']) || !is_uploaded_file($_FILES['myfile']['tmp_name'])) { echo 'No upload'; }</code>
is_uploaded_file() memastikan bahawa fail telah dimuat naik melalui HTTP POST dan menghalang muat naik berniat jahat.
2. Kelas FileUpload dengan Kaedah FileUpload()
Dalam kelas FileUpload, anda boleh melaksanakan kaedah fileUploaded():
<code class="php">public function fileUploaded() { if(empty($_FILES)) { return false; } $this->file = $_FILES[$this->formField]; if(!file_exists($this->file['tmp_name']) || !is_uploaded_file($this->file['tmp_name'])){ $this->errors['FileNotExists'] = true; return false; } return true; }</code>
Kaedah ini menyemak sama ada terdapat sebarang fail dalam POST meminta dan mengembalikan palsu jika fail tidak wujud atau tidak dimuat naik. Ia menetapkan bendera ralat jika fail itu tiada dan mengembalikan benar jika fail berjaya dimuat naik.
Atas ialah kandungan terperinci Bagaimana Anda Boleh Menentukan jika Pengguna Telah Memuat Naik Fail dalam PHP, Walaupun Muat Naik adalah Pilihan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!