当前位置:Gxlcms > PHP教程 > 怎么正则出HTTP开头的JPG图片

怎么正则出HTTP开头的JPG图片

时间:2021-07-01 10:21:17 帮助过:9人阅读

如何正则出HTTP开头的JPG图片?
我使用 simple_html_dom.php, 只会找出HTTP开头的图片,如何再加一个JPG结尾的判断?

foreach ($html->find('img[src^="http"]') as $element) 


或者
哪位给写个 preg_match_all 所有 HTTP开头的JPG图片?谢谢。

分享到:


------解决方案--------------------
不是太明白你想表达的意思,这是我学正则的时候写的,获取一个网页图片的,

/*
* @param string $url 采集url
* @param int $isinsite 是否为站内的 默认1为站内0为站外站内
* @return string
*/
function getallimg($url,$isinsite=1)
{
$urlstr=parse_url($url);
$url=$urlstr[scheme]?$url:"http://".$urlstr[path];//判断用户输入的网址有没有包含http://再进行补全
$urlstr=parse_url($url);
$site="http://".$urlstr[host];//取本站地址
$subject =file_get_contents($url);
$pattern = '/.*------解决方案--------------------
\"](.*[.jpg
------解决方案--------------------
.gif
------解决方案--------------------
.png])[\'
------解决方案--------------------
\"].*\/??>.*/U';//其中的//为分隔符
preg_match_all($pattern,$subject,$result);//查找所有的匹配项
if($isinsite==0)
{
foreach ($result as $key => $value) //二维数组$result[n][m];
{
if($key==1)
{
foreach ( $value as $key => $value )//取$result[m]
{
$isownsite=parse_url($value);
$url=$isownsite[host]?$value:$site.$isownsite[path];//获取该网页的所有图片还其他网址的
$imgcontent.="
------解决方案--------------------
";
}
}
}
}
if($isinsite==1)
{
foreach ($result as $key => $value) //二维数组$result[n][m];
{
if($key==1)
{
foreach ( $value as $key => $value )//取$result[m]
{
$isownsite=parse_url($value);
$url=$isownsite[host]?NULL:$site.$isownsite[path];//只获取该site的不含外部网址
if($url!=NULL)
$imgcontent.="
------解决方案--------------------
";
}
}
}
}
return $imgcontent;
}
?>


找全站内图片

找全站内站外图片

人气教程排行