$_FILES
Biến $_FILES
để quản lý file upload. Khi upload một file có html input name là myfile
thì PHP sẽ tạo ra một mảng $_FILES['myfile']
có các giá trị:
$_FILES['myfile']['name']
là tên file upload$_FILES['myfile']['type']
là kiểu file (ví dụ ‘image/png’)$_FILES['myfile']['size']
là kích cỡ của file (được tính bằng bytes)$_FILES['myfile']['tmp_name']
là tên tạm khi được lưu trên server$_FILES['myfile']['error']
là mã lỗi khi upload, trường hợp không lỗi thì sẽ nhận giá trị 0 (hay UPLOAD_ERR_OK)
|
|
Upload file vào thư mục /uploads
Để load một file vào một thư mục trên folder và đặt lại tên cho file hãy sử dụng hàm move_uploaded_file
.
|
|
Upload nhiều file một lúc
Khi upload nhiều file, đặt name
trong html tương tự như myfile[]
(có []
ở cuối).
|
|
Khi upload lên thì $_FILES["myfile"]
sẽ là một mảng của mảng. Với $_FILES["myfile"]['name'][0]
là tên file 1, $_FILES["myfile"]['name'][1]
là tên file 2. Tương tự với các trường khác.
Các cấu hình khi upload file
Các cấu hình trong file php.ini
file_uploads
: true hoặc false cho phép có bật/tắt chức năng upload file trong PHPupload_max_filesize
: giới hạn số lượng bytes được upload, vượt quá số lượng này file sẽ không được upload và sẽ báo lỗi.upload_tmp_dir
: thư mục tạm khi upload file lên, mặc định trong linux là /tmppost_max_size
: giới hạn số lượng bytes của method post.
Nếu muốn chỉnh giới hạn file upload là 20M thì chỉnh cả upload_max_filesize
và post_max_size
là 20M
.