📅  最后修改于: 2023-12-03 15:38:35.271000             🧑  作者: Mango
在PHP中,与文件上传相关的错误代码可以通过预定义常量来访问。以下是预定义常量和相应的错误代码:
UPLOAD_ERR_OK
:表示没有错误发生,文件上传成功。UPLOAD_ERR_INI_SIZE
:表示上传的文件大小超过了php.ini中upload_max_filesize选项的值。UPLOAD_ERR_FORM_SIZE
:表示上传的文件大小超过了HTML表单中MAX_FILE_SIZE选项指定的值。UPLOAD_ERR_PARTIAL
:表示上传的文件只有部分被上传。UPLOAD_ERR_NO_FILE
:表示没有文件被上传。UPLOAD_ERR_NO_TMP_DIR
:表示找不到临时文件夹。UPLOAD_ERR_CANT_WRITE
:表示文件写入失败。UPLOAD_ERR_EXTENSION
:表示一个PHP扩展阻止了文件上传。要访问这些预定义常量,可以使用PHP函数$_FILES['file']['error']
,其中file
是文件上传表单中文件输入的名称。
例如:
if ($_FILES['file']['error'] === UPLOAD_ERR_OK) {
// 文件上传成功
} elseif ($_FILES['file']['error'] === UPLOAD_ERR_INI_SIZE) {
// 上传的文件大小超过了php.ini中upload_max_filesize选项的值
} elseif ($_FILES['file']['error'] === UPLOAD_ERR_FORM_SIZE) {
// 上传的文件大小超过了HTML表单中MAX_FILE_SIZE选项指定的值
} elseif ($_FILES['file']['error'] === UPLOAD_ERR_PARTIAL) {
// 上传的文件只有部分被上传
} elseif ($_FILES['file']['error'] === UPLOAD_ERR_NO_FILE) {
// 没有文件被上传
} elseif ($_FILES['file']['error'] === UPLOAD_ERR_NO_TMP_DIR) {
// 找不到临时文件夹
} elseif ($_FILES['file']['error'] === UPLOAD_ERR_CANT_WRITE) {
// 文件写入失败
} elseif ($_FILES['file']['error'] === UPLOAD_ERR_EXTENSION) {
// 一个PHP扩展阻止了文件上传
}
建议在编写文件上传代码时,对上传的文件类型和大小进行验证,以确保上传的文件符合要求。