Hàm is_uploaded_file
Hàm is_uploaded_file kiểm tra xem tệp được chỉ định có
được tải lên qua yêu cầu POST hay không. Đây là một kiểm tra bảo mật quan trọng
khi làm việc với các tệp được tải lên. Hàm nhận một tham số -
đường dẫn đến tệp cần kiểm tra, và trả về true nếu tệp
được tải lên qua POST, và false trong trường hợp ngược lại.
Cú pháp
is_uploaded_file(string $filename): bool
Ví dụ
Kiểm tra xem tệp có được tải lên qua biểu mẫu không:
<?php
if (is_uploaded_file($_FILES['userfile']['tmp_name'])) {
echo 'File was uploaded via HTTP POST';
} else {
echo 'File was NOT uploaded via HTTP POST';
}
?>
Ví dụ
Sử dụng hàm kết hợp với move_uploaded_file:
<?php
$temp_file = $_FILES['userfile']['tmp_name'];
$target_file = 'uploads/' . $_FILES['userfile']['name'];
if (is_uploaded_file($temp_file)) {
move_uploaded_file($temp_file, $target_file);
echo 'file uploaded successfully';
} else {
echo 'possible file upload attack';
}
?>
Xem thêm
-
hàm
move_uploaded_file,
di chuyển một tệp đã tải lên một cách an toàn -
hàm
file_exists,
kiểm tra sự tồn tại của tệp (nhưng không chỉ các tệp đã tải lên) -
hàm
tmpfile,
tạo một tệp tạm thời -
hàm
is_file,
kiểm tra xem có phải là tệp không