【发布时间】:2014-04-20 16:00:45
【问题描述】:
大家好,我有一个上传脚本可以将图片上传到图片文件夹,但是上传的图片如下所示:
5353ee0e7ef05_13
和
5353ee0e7f08c_13seatplan
名称应该是 13 和 13seatplan,有没有办法解决这个问题?代码如下:
foreach ($_FILES['file']['name'] as $f => $name) {
$allowedExts = array("gif", "jpeg", "jpg", "png");
$temp = explode(".", $name);
$extension = end($temp);
if ((($_FILES["file"]["type"][$f] == "image/gif")
|| ($_FILES["file"]["type"][$f] == "image/jpeg")
|| ($_FILES["file"]["type"][$f] == "image/jpg")
|| ($_FILES["file"]["type"][$f] == "image/png"))
&& ($_FILES["file"]["size"][$f] < 2000000)
&& in_array($extension, $allowedExts))
{
if ($_FILES["file"]["error"][$f] > 0)
{
echo "Return Code: " . $_FILES["file"]["error"][$f] . "<br>";
}
else
{
if (file_exists("images/" . $name))
{
}
else
{
move_uploaded_file($_FILES["file"]["tmp_name"][$f], "images/" . uniqid() . "_" . $name);
}
}
}
else
{
$error = "Invalid file";
}
}
我认为这是上传时命名的问题,但我无法弄清楚问题,谢谢
【问题讨论】:
-
还有
in_array可以帮助您使用if子句节省一些||。 -
我会调查的,谢谢