我需要上传md5/uniqid
名称的图片。
PHP:
$filenamekey = md5(uniqid($_FILES["myfile"]["name"], true));
move_uploaded_file($_FILES["myfile"]["tmp_name"],$output_dir.$filenamekey);
此图片移动到md5 name
的文件夹中,但上传文件时没有任何图片extension/type
。我该如何解决这个问题?
产品图?
答案 0 :(得分:1)
你可以尝试这个,你需要在你的文件名中添加文件扩展名,因为你已经将文件名转换为md5编码,即使它也编码了扩展名。在这种情况下,您需要添加文件扩展名。
$Filepath = $_FILES['myfile']['name'];
$filenamekey = md5(uniqid($Filepath, true));
$Fileext = pathinfo($Filepath, PATHINFO_EXTENSION);
$filenamekey = $filenamekey.'.'.$Fileext;
答案 1 :(得分:1)
获取文件扩展名并将其添加到$filenamekey
。
$extension = pathinfo($_FILES["myfile"]["name"], PATHINFO_EXTENSION);
$filenamekey .= "." . $extension;
答案 2 :(得分:0)
你可以这样做:
$filenamekey = md5(uniqid($_FILES["myfile"]["name"], true));
// find the original extension and append it to the filename
$filenamekey .= "." . pathinfo($_FILES["myfile"]["name"], PATHINFO_EXTENSION);
move_uploaded_file($_FILES["myfile"]["tmp_name"],$output_dir.$filenamekey);