我在前端获得了提交内容的表单,其中我需要在提交时检查文件是否存在。
请注意,该表单提交文件数组。它失败了我一直在尝试的所有逻辑。请注意 html 第二行的 upload[]
。
HTML
<form method="post" id="upload-form" action="" enctype="multipart/form-data" >
<input type="file" multiple="true" name="upload[]">
<input type="submit" name="upload_attachments" value="UPLOAD">
<form>
PHP
if(!file_exists($_FILES['upload']['tmp_name'].'/'.$FILES['upload']['name'])) {
$upload_error = 'file is not set !';
return; //stop further code execution
}else{
//do further validation
}
上面的代码在两种情况下都显示了'file is not set !'
,即当我在没有上传文件的情况下点击提交按钮以及当我选择上传文件并点击提交按钮时。
这里发生了什么,我做对了吗?
基本上,当有人在没有选择要上传的文件的情况下点击提交按钮时,我想返回一条“文件为空”消息,并停止进一步的代码执行。
最佳答案
$_FILES[<key>]['tmp_name']
- 包含服务器上的文件路径
$_FILES[<key>]['name']
- 只是原始文件名
寻址文件数组 file[]
您需要通过以下方式获取数据
$_FILES[<key>][<property>][<id>]
尝试
if(!file_exists($_FILES['upload']['tmp_name'][0])) {
手册
http://www.php.net/manual/en/features.file-upload.php
http://www.php.net/manual/en/features.file-upload.multiple.php
关于php - 检查上传文件数组中是否存在文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23930447/