ClassCMS

获取正文图片

获取内容图片列表

function getContentPics($content){
    preg_match_all('/<img.*?(?: |\\t|\\r|\\n)?src=[\'"]?(.+?)[\'"]?(?:(?: |\\t|\\r|\\n)+.*?)?>/sim', $content, $result, PREG_PATTERN_ORDER);
    $pics=array();
    foreach ($result[1] as $pic) {
        if(stripos($pic,"'")!==false) {$thispic=explode("'",$pic);$pic=$thispic[0];}
        if(stripos($pic,'"')!==false) {$thispic=explode('"',$pic);$pic=$thispic[0];}
        $pics[]=$pic;
    }
    return array_unique($pics);
}

以上代码放入应用主文件中

调用代码

{$pics=this:getContentPics($content)}
循环图片列表:
{loop $pics as $pic}
    {$pic}
{/loop}
图片数量:{count($pics)}
第一张图片:
{if isset($pics.0)}{$pics.0}{/if}
前三张图片:
{loop $pics as $key=>$pic}
    {if $key<3}{$pic}{/if}
{/loop}

如在文章列表循环内,$content应换成$xxx.content