html
<form action="chuli.php" method="post" enctype="multipart/form-data"> <input type="file" name="upfile" id="upfile" /> <input type="submit" /> </form>
echo ‘<pre><meta charset="UTF-8">‘;
//输出所有传值内容
var_dump($_FILES[‘upfile‘]);
//将每一项赋值
//文件名
$name = $_FILES[‘upfile‘][‘name‘];
//文件类型
$type = $_FILES[‘upfile‘][‘type‘];
//临时路径
$tmp_name = $_FILES[‘upfile‘][‘tmp_name‘];
//错误代码
$error = $_FILES[‘upfile‘][‘error‘];
//文件大小
$size = $_FILES[‘upfile‘][‘size‘];
//如果文件名不为空则向下判断
if(!empty($name)){
//如果错误等于0 则没有错误,往下判断
if($error == 0){
//文件类型为图片时
if($type == ‘image/jpeg‘){
//文件大小小于100000b
if($size <=100000){
//如果不存在文件夹upfile
if(!is_dir("upfile")){
//创建文件夹upfile
mkdir("upfile");
}
//定义时间戳
$time = time();
//文件名设置为
$path = "upfile".$time.$name;
//如果文件移动成功
if(move_uploaded_file($tmp_name,$path)){
echo ‘上传成功‘;
}else{
echo‘上传失败‘;
}
//否则则输出文件过大
}else{
echo‘文件过大‘;
}
//若不是图片则输出格式不对
}else{
echo‘文件格式不对‘;
}
//错误代号,输出各种错误意思。
}else{
switch($error){
case ‘1‘:
echo ‘上传的文件超过了 php.ini 中 upload_max_filesize 选项限制的值‘;
break;
case ‘2‘:
echo ‘传文件的大小超过了 HTML 表单中 MAX_FILE_SIZE 选项指定的值。‘;
break;
case ‘3‘:
echo ‘文件只有部分被上传‘;
break;
case ‘4‘:
echo ‘没有文件被上传‘;
break;
}
}
//文件名为空,则输出文件为空
}else{
echo ‘文件为空‘;
}
文件传输的内容

name 为文件名,
type 为文件类型
tmp_name 为文件临时路径
error 为错误代码
size 为文件大小单位为b
错误类型如下:
0 :没有错误
1:上传的文件超过了 php.ini 中 upload_max_filesize 选项限制的值
2:传文件的大小超过了 HTML 表单中 MAX_FILE_SIZE 选项指定的值。
3:文件只有部分被上传
4:没有文件被上传
其他:
is_dir() 函数检查指定的文件是否是一个目录。
mkdir() 函数创建目录。
move_uploaded_file(file,path) 函数将上传的文件移动到新位置。 file为文件 path为位置
原文:https://www.cnblogs.com/zuichumx0826/p/9282147.html