本文实例讲述了php实现获取文章内容第一张图片的方法。分享给大家供大家参考。具体分析如下:
采用php获取文章内容的第一张图片方法非常的简单,我们最常用的是使用正则了,感兴趣的朋友可以参考一下下面这段代码。
以下是关于选取文章中第一张图片的代码:
$obj=M(\"News\");
$info=$obj->where(\'id=1\')->find();
//方法1*********
$soContent = $info[\'content\'];
$soImages = \'~<img [^>]* />~\';
preg_match_all( $soImages, $soContent, $thePics );
$allPics = count($thePics[0]);
preg_match(\'/<img.+src=\\\"?(.+\\.(jpg|gif|bmp|bnp|png))\\\"?.+>/i\',$thePics[0][0],$match);
dump($thePics);
if( $allPics> 0 ){
echo \"<img src=\'\".$match[1].\"\' title=\'\".$match[1].\"\'>\";//获取的图片名称
}
else {
echo \"没有图片\";
}
//**************
$soContent = $info[\'content\'];
$soImages = \'~<img [^>]* />~\';
preg_match_all( $soImages, $soContent, $thePics );
$allPics = count($thePics[0]);
dump($thePics);
if( $allPics> 0 ){
echo $thePics[0][0]; //获取的整个Img属性
} else {
echo \"没有图片\";
}
//**************
$soImages = \'~<img [^>]* />~\';
$str=$info[\'content\'];
preg_match_all($soImages,$str,$ereg);//正则表达式把图片的整个都获取出来了
$img=$ereg[0][0];//图片
$p=\"#src=(\'|\\\")(.*)(\'|\\\")#isU\";//正则表达式
preg_match_all ($p, $img, $img1);
$img_path =$img1[2][0];//获取第一张图片路径
if(!$img_path){
$img_path=\"images/nopic.jpg\";
} //如果新闻中不存在图片,用默认的nopic.jpg替换 */
echo $img_path;
//*************88
$str=$info[\'content\'];
preg_match_all(\"/<img.*\\>/isU\",$str,$ereg);//正则表达式把图片的整个都获取出来了
$img=$ereg[0][0];//图片
$p=\"#src=(\'|\\\")(.*)(\'|\\\")#isU\";//正则表达式
preg_match_all ($p, $img, $img1);
$img_path =$img1[2][0];//获取第一张图片路径
if(!$img_path){
$img_path=\"images/nopic.jpg\";
} //如果新闻中不存在图片,用默认的nopic.jpg替换 */
echo $img_path;
希望本文所述对大家的PHP程序设计有所帮助。
本文地址:https://www.stayed.cn/item/26404
转载请注明出处。
本站部分内容来源于网络,如侵犯到您的权益,请 联系我