PHP文件上传主要代码讲解

前端技术 2023/09/09 PHP

复制代码 代码如下:

<?php  
 if($_FILES[\'myfile\'][\'name\'] != \'\') {  
if($_FILES[\'myfile\'][\'error\'] > 0) {  
echo \"错误状态:\" . $_FILES[\'myfile\'][\'error\'];  
} else {  
move_uploaded_file($_FILES[\'myfile\'][\'tmp_name\'] , \"uploads/\" . $FILES[\'myfile\'][\'name\']);  
echo \"<script>alert(上传成功!);</script>\";  
}  
} else{  
echo \"<script>alert(请上传文件!);</script>\";  
}  
?>

说明:

在解释这篇代码前,我们有必要了解以下知识。

$_FILES[\'myfile\'][\'name\'] 是指被上传文件的名称
$_FILES[\'myfile\'][\'type\'] 是指被上传文件的类型
$_FILES[\'myfile\'][\'size\'] 是指被上传文件的大小,单位为字节(B)
$_FILES[\'myfile\'][\'tmp_name\'] 是指被上传文件存在服务器中的临时副本文件名称,文件被移动到指定目录后临文件将被自动消毁。
$_FILES[\'myfile\'][\"error\"] 是指由文件上传中有可能出现的错误的状态码,关于各状态含义后在会说明。

了解了这些,我们再来看一下upload.php的代码。

首先,$_FILES[\'myfile\'][\'name\']中的myfile是指在上面HTML页面中上传文件标签的name值,根据这个我们才能知道我们正在处理的文件是哪一个input提交过来的。

然后再来判断一下 $_FILES[\'myfile\'][\'name\'] 不是否为空,根据这个我们可以知道用户有没有上传文件,从而执行不同的操作。

如果上传了文件并且状态是0就说明上传成功,我们就可以用 move_uploaded_file方法把上传的文件存放到指定目录,上面这个例子是指把上传的文件移动到同目录下的uploads文件夹下,这个路径是相对于这个PHP文件(既upload.php)的相对目录。

比如,我们想把上传的文件移动到upload.php上一层叫user的文件夹中的话,我们就可以这样写:move_uploaded_file($_FILES[\'myfile\'][\'tmp_name\'] , \"./user/\". $FILES[\'myfile\'][\'name\']),这种方法使用起来很方便、灵活,这样一个文件就被上传到服务器中了,可以打开服务器中的目录查看该文件。

本文地址:https://www.stayed.cn/item/24488

转载请注明出处。

本站部分内容来源于网络,如侵犯到您的权益,请 联系我

我的博客

人生若只如初见,何事秋风悲画扇。