我正在将文件上传到服务器。除非上传的文件中有空格,否则一切正常。
我试过用: str_replace(“”,“_”,$ _FILES ['image'] ['name']);
我的代码是
$image_name= str_replace(" ", "_", $_FILES['image']['name']);
$image_tmp_name = $_FILES['image']['tmp_name'];
$image=$_FILES['image'];
$url = "http://jkshahclasses.com/push_images/$image_name";
if(move_uploaded_file($image_tmp_name,"../../push_images/$image_name"))
{
echo "file uploaded";
}
else
{
echo "error: file not uploaded";
}
提前致谢
答案 0 :(得分:0)
您可以使用此功能在上传之前敲击您的文件名:
public function slugify($text)
{
// replace all non letters or digits by _
$text = preg_replace('/\W+/', '_', $text);
// trim and lowercase
$text = strtolower(trim($text, '_'));
return $text;
}
但首先你必须得到文件名,你可以用这个函数来做:
$file_name = pathinfo($path, PATHINFO_FILENAME);
如果您想获得文件扩展名,则必须使用:
$file_ext = pathinfo($path, PATHINFO_EXTENSION);