请问下面php问什么会出错
程序员文章站
2024-01-12 22:12:10
...
我就是想把 hao123的图片全都用正则匹配出来,然后再用file_get_contents()函数获取远程图片到字符串 然后再写入到文件达到下载的目的!但是file_get_contents()函数 不知道问什么匹配不了正则匹配回来的url,请大家帮忙解答下,非常感谢。
代码如下:
$str=file_get_contents("http://www.hao123.com");
preg_match_all('/\/i',$str,$images);
foreach($images[1] as $key => $img)
{
$filename=$key.".png";
$imgs=file_get_contents(trim($img));
file_put_contents($filename,trim($imgs));
}
错误代码:
Warning: file_get_contents("http://s0.hao123img.com/res/r/image/2014-10-18/3820a8ee766ece775cd098cba2706903.png") [function.file-get-contents]: failed to open stream: Invalid argument in C:\AppServ\www\image.php on line 9
Warning: file_get_contents("http://s0.hao123img.com/res/r/image/2014-09-29/d7ae4208f3fedc3c85d27f37c258706b.png") [function.file-get-contents]: failed to open stream: Invalid argument in C:\AppServ\www\image.php on line 9
preg_match_all('/\/i',$str,$images);
代码如下:
$str=file_get_contents("http://www.hao123.com");
preg_match_all('/\/i',$str,$images);
foreach($images[1] as $key => $img)
{
$filename=$key.".png";
$imgs=file_get_contents(trim($img));
file_put_contents($filename,trim($imgs));
}
错误代码:
Warning: file_get_contents("http://s0.hao123img.com/res/r/image/2014-10-18/3820a8ee766ece775cd098cba2706903.png") [function.file-get-contents]: failed to open stream: Invalid argument in C:\AppServ\www\image.php on line 9
Warning: file_get_contents("http://s0.hao123img.com/res/r/image/2014-09-29/d7ae4208f3fedc3c85d27f37c258706b.png") [function.file-get-contents]: failed to open stream: Invalid argument in C:\AppServ\www\image.php on line 9
回复讨论(解决方案)
多个一对 " 改成
preg_match_all('/\\"+(\S*)\"+.*?\>/i',$str,$images);
多个一对 " 改成
preg_match_all('/\\"+(\S*)\"+.*?\>/i',$str,$images);
preg_match_all('/\/i',$str,$images);
非常感谢啊! 我说的吗 子模式中多了个引号 非常感谢 哈哈
上一篇: 手机端支付宝和pc端有区别吗?只要申请开通权限一样用吗?
下一篇: java验证电话号码的方法