📅  最后修改于: 2020-10-21 05:11:47             🧑  作者: Mango
PHP脚本可以与HTML表单一起使用,以允许用户将文件上传到服务器。最初,文件被上传到临时目录,然后通过PHP脚本重定位到目标位置。
phpinfo.php页面中的信息将用于文件上传的临时目录描述为upload_tmp_dir ,将允许上传的文件的最大允许大小声明为upload_max_filesize 。这些参数设置在PHP配置文件php.ini中
上传文件的过程遵循以下步骤-
用户打开包含HTML表单的页面,该表单包含文本文件,浏览按钮和提交按钮。
用户单击浏览按钮,然后选择要从本地PC上传的文件。
所选文件的完整路径将显示在文本字段中,然后用户单击“提交”按钮。
所选文件将发送到服务器上的临时目录。
在表单的action属性中被指定为表单处理程序的PHP脚本检查文件是否到达,然后将文件复制到预期的目录中。
PHP脚本向用户确认成功。
与往常一样,在写入文件时,必须为临时位置和最终位置都设置允许文件写入的权限。如果将其中任何一个设置为只读,则处理将失败。
上传的文件可以是文本文件或图像文件,也可以是任何文档。
下面的以下HTM代码创建一个上载器表单。此表单的方法属性设置为post,而enctype属性设置为multipart / form-data
2097152){
$errors[]='File size must be excately 2 MB';
}
if(empty($errors)==true){
move_uploaded_file($file_tmp,"images/".$file_name);
echo "Success";
}else{
print_r($errors);
}
}
?>
它将产生以下结果-
有一个名为$ _FILES的全局PHP变量。此变量是关联的二维数组,保留与上载文件有关的所有信息。因此,如果在上传表单中分配给输入的name属性的值是file ,那么PHP将创建以下五个变量-
$ _FILES [‘file’] [‘tmp_name’] -Web服务器上临时目录中的上载文件。
$ _FILES [‘file’] [‘name’] -上载文件的实际名称。
$ _FILES [‘file’] [‘size’] -上载文件的大小(以字节为单位)。
$ _FILES [‘file’] [‘type’] -上载文件的MIME类型。
$ _FILES [‘file’] [‘error’] -与此文件上传关联的错误代码。
以下示例应允许上传图片,并返回结果作为上传文件信息。
2097152) {
$errors[]='File size must be excately 2 MB';
}
if(empty($errors)==true) {
move_uploaded_file($file_tmp,"images/".$file_name);
echo "Success";
}else{
print_r($errors);
}
}
?>
它将产生以下结果-