is_uploaded_file()函数可以检查是否通过HTTP POST上传指定的文件。如果文件是通过HTTP POST上传的,则此函数可以返回true。
bool is_uploaded_file ( string $filename )
如果 filename 所给出的文件是通过 HTTP POST 上传的则返回 TRUE。这可以用来确保恶意的用户无法欺骗脚本去访问本不能访问的文件,例如 /etc/passwd。
这种检查显得格外重要,如果上传的文件有可能会造成对用户或本系统的其他用户显示其内容的话。
为了能使 is_uploaded_file() 函数正常工作,必段指定类似于 $_FILES['userfile']['tmp_name'] 的变量,而在从客户端上传的文件名 $_FILES['userfile']['name'] 不能正常运作。
<?php $file = "/PhpProject/simple.txt"; if(is_uploaded_file($file)) { echo ("$file 通过HTTP POST上传"); } else { echo ("$file 不是通过 HTTP POST 上传"); } ?>
输出结果
/PhpProject/simple.txt 不是通过 HTTP POST 上传