3

getimagesize用来判断图像的高度和大小。

当 url 有空格时,getimagesize回显是一个错误。我已经尝试使用urlencode()来传输所有的url地址,它仍然返回一个错误。我注意到,如果我只是将空间更改为%20getimagesize运行正常。

我不知道为什么?

我也厌倦了使用$newurl = preg_replace(' ', '%20', $url);It echo'ed :

Warning: preg_replace() [function.preg-replace]: Empty regular expression

那么如何preg_replace正确。有没有办法正确传输 url,getimagesize以便它通过所有可能的测试用例。

谢谢

4

4 回答 4

3

urldecode()是您在处理图像之前转换所有这些字符后要用来解码所有这些字符的函数。通过它运行包含 URL 的字符串。

于 2011-03-08T21:16:30.793 回答
3

你应该使用str_replace(' ', "%20", $url)而不是preg_replace(' ', '%20', $url);

于 2011-03-08T21:16:45.303 回答
2

如果只有文件名包含空格,您可以使用 rawurlencode()。

$url = dirname($url) . '/'. rawurlencode(basename($url));
于 2015-04-30T23:07:24.787 回答
0

您可以在尝试使用 urlencode 时发布一些示例代码吗?此外,最后一位不需要使用 preg_replace,只需使用 str_replace。

于 2011-03-08T21:17:41.937 回答