我的网站

帝国cms正则提取正文newstext字段中所有图片的方法

罗哥 帝国教程 2021-04-25 21:31:55 16 0

效果图如下

在模板的制作过程中,我们常常会遇到需要从正文newstext中提取图片的问题,由于newstext是整块图文输出,所以我们需要对newstext正文模块进行处理,以保证我们所需要的内容是图片!

现在我们所处理的环境是内容模板,关于灵动标签在首页调用正文图片的方式大致相同,如果你实在不知道如何在灵动标签中调用正文中的图片,可以留言,有必要的我会更新关于灵动标签的文章,好了,现在我们正式开始讲解怎么在内容模板中提取正文第一张图以及多张图片,以达到不同的图片样式结构!

<?php
$newstext = stripcslashes($navinfor['newstext']);   //正文newstext数据
preg_match_all('/<img.*?src="(.*?)".*?>/is', $newstext, $ImgArr);   //正则提取正文图片
$ImgArr = array_unique($ImgArr[1]); //图片如有复生将去重复
$Imgno = 0; //给定初始序号
foreach ($ImgArr as $v) {   //判断有多少张图
    $Imgno ++;   //循环输出每一张图
?>
<img src="<?=$v?>" alt="<?=$navinfor['title'] ?>第<?=$Imgno ?>张"></a>    //输出的图片样式格式
<?php
}
?>

其他字段一样可以依次处理。