21,887
社区成员
发帖
与我相关
我的任务
分享
//函数名:get_image_fromcontent( &$content)
//作用:在含有HTML标签并带有图片的内容中过滤出图片地址(去除图片样式只保留图片地址)
//参数:$content(待过滤的字符串)
//返回值:字符串
//备注:数据库中查询带图片的内容最有效的查询语句-- ***(查询项) REGEXP '<\s*img[^>]+src\s*=\s*[^>]+>'
private function get_image_fromcontent( &$content)
{
//获取内容中图片
//取得第一个匹配的图片路径
$retimg="";
$matches=null;
//标准的src="xxxxx"或者src='xxxxx'写法
preg_match("/<\s*img\s+[^>]*?src\s*=\s*(\'|\")(.*?)\\1[^>]*?\/?\s*>/i", $content, $matches);
if(isset($matches[2])){
$retimg=$matches[2];
unset($matches);
return $retimg;
}
//非标准的src=xxxxx 写法
unset($matches);
$matches=null;
preg_match("/<\s*img\s+[^>]*?src\s*=\s*(.*?)[\s\"\'>][^>]*?\/?\s*>/i", $content, $matches);
if(isset($matches[1])){
$retimg=$matches[1];
}
unset($matches);
return $retimg;
}
//提取url
$pattern="|<img[^>]*?src="([^>]*?)".*?> |is"; //本匹配只匹配符合规xhtml规范的src属性
$regcount=preg_match_all($pattern,$text,$arr,PREG_SET_ORDER); //将正则结果存在substr数组中
echo '<pre>';
print_r($arr);
echo '</pre>';
//删除img
preg_replace ('/<img.*?>/is','', $text )