PHP的文件上传

数据传输两种方式
1.字符数据传输方式 普通的数据传输
2.二进制格式传输
文件的传输 :图片 普通的文件

文件的上传
概念:从一台电脑上,将文件传输到另外一台电脑上。
从客户端 上传到服务端机器。post 和get 不能直接进行二进制文件的直接传输
,get不能直接传,post需要搭配一个属性 可以传输。

文件上传分为两个步骤
1.客户端用户上传
a)增加文件上传的表单域
b)用户选择上传文件
c)点击上传,将文件发送给服务器

<form action="demo.php" method="POST">
<input type="file" name="file">
<input type="submit" value="提交">

</form>

2.服务端接收
接收文件上传
echo ‘


var_dump(POST);form使post使postphp.inipostenctype=multipart/formdataphpsleep10...vardump_POST); form 表单使用post方式提交数据,因此使用post接收数据,接收到的是文件的名字 文件上传必须要在服务器端先开启文件上传的功能 在php.ini里面配置 post默认提交字符流数据,不能提交二进制数据,如果需要提交二进制数据,需要给表单额外增加一个属性:enctype=“multipart/form-data” 多功能表单数据 php执行完会释放掉所有的资源,所以名字啥的都没有了, 所以要加个时间控制函数,表示当前脚本在执行过程中,不会立即结束,而是需要等待一定的时间,sleep(10) 等待十秒钟... 查看文件的上传信息 var_dump(_FILES);
任何文件的上传,都会获得五个信息
验证文件的合法性,只需要验证文件信息里的error信息,只要为0表示没有任何错,还是要判断 每一个都要判断一下

移动临时文件
php提供了两个函数来实现文件的移动
move_uploaded_file 将文件直接移动到目标路径,不会保留源文件,
copy 将文件复制到目标路径
PHP的文件上传