我正试图使用以下代码隐藏图像的实际路径:
11> $img = "http://mp4mobilemovies.net/screenshots/Badlapur - DvdScr.jpg";
12>
13> $im = imagecreatefromjpeg($img);
14>
15> header('Content-Type: image/jpeg');
16>
17> imagejpeg($im);
但我什么都没得到,什么都没有,甚至没有垃圾ASCII,只是空白。感谢您的帮助。谢谢
编辑:
出现以下错误:
<b>Warning</b>: imagecreatefromjpeg(http://mp4mobilemovies.net/screenshots/Badlapur - DvdScr.jpg): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found
in <b>/home/vhosts/www.example.com/img.php</b> on line <b>13</b><br />
<b>Warning</b>: imagejpeg() expects parameter 1 to be resource, boolean given in <b>/home/vhosts/www.example.com/img.php</b> on line <b>17</b><br />
您应该避免这样做。主要原因是PHP会调用远程源,然后加载图像并将其提供给用户。如果必须这样做,我建议您使用一些缓存机制。
php抛出的错误基本上表明您正在尝试获取一个不存在的远程文件。请确保您已正确输入完整路径。
此外,尝试用%20
替换空白,如下所示:
http://mp4mobilemovies.net/screenshots/Badlapur%20-%20DvdScr.jpg
现在它应该起作用了。
我认为错误的地方是,我实际上是通过XPath查询而不是简单地键入$img
变量,所以我不得不使用strval($img)
和str_replace()
将空格替换为%20
,而不是urlencode()
,这也会连接其他字符。但感谢您的支持。