我对 php 很陌生。我正在查看一个关于文件上传的示例。在里面getimagesize()
功能$_FILES['file']['temp_name']
当我回显 $_FILES['file']['temp_name'] 时,它显示以下输出:
C:\xampp\tmp\phpDE4B.tmp
我的问题是:
1.为什么里面用tmp_name而不是原来的名字getimagesize()
功能。
2.创建这个tmp_name的原因是什么?
3.它是如何生成的?
$target_dir = "uploads/";
$target_file = $target_dir . basename($_FILES["fileToUpload"]["name"]);
$uploadOk = 1;
$imageFileType = pathinfo($target_file,PATHINFO_EXTENSION);
// Check if image file is a actual image or fake image
if(isset($_POST["submit"])) {
$check = getimagesize($_FILES["fileToUpload"]["tmp_name"]);
if($check !== false) {
echo "File is an image - " . $check["mime"] . ".";
$uploadOk = 1;
} else {
echo "File is not an image.";
$uploadOk = 0;
}
}
临时文件是作为文件上传过程的一部分生成的,直接在 PHP 和 Web 服务器之间处理。
使用临时文件,以便用户态代码可以将文件移动到服务器上的最终目标文件夹 - 最终目标文件夹不是可以在 http 请求中传递或由 Web 服务器处理的信息,因为它完全取决于在您的申请上。如果文件未移动到最终目标文件夹,则临时文件将在请求结束时自动删除
在这种情况下,代码是验证过程的一部分,以确保文件与其声称的相符before将其移动到最终目标文件夹(假设它是有效文件)。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)