在标题列表调用多图怎么实现?

oliolo 2020-12-29 828

现在xiuno都是调用一个图片。

如果想在列表中调用内容页2-9张图片

php 怎么写?

也就是内容页有2张就调用2张。

8张图片,她就调用8张。

10张图片就调用前9张。可以限制。


第二个问题:

还想做个判断,就是列表,当内容图片又一张图片显示一个样式,超过3张显示另一个样式。php我也不知道怎么写。


思路应该是在调用图片时做判断吧!

最新回复 (4)
  • oliolo 2020-12-29
    引用 2
    大概这意思吧!

    <?php if(preg_match_all("/<img.*src=[\"'](.*)[\"']/Ui", $value['content'], $imgs) && !empty($imgs[1])){
    $imgNum = count($imgs[1]);
    if($imgNum < 5) $n = 1;
    elseif($imgNum < 9) $n = 5;
    else $n = 9;
    for($i=0; $i < $n; $i++){
    $img = $imgs[1][$i];echo "<img src='$img'>";}
    }else{
    echo "<img src='当没有图片可以调用时显示的图片的地址'>";}//当没有图片可以调用时显示这个图片
    ?>
    网站内容里的图片数量低于5张时只调用1张图片,当网站内容里的图片数量低于9张时调用5张图片,当网站内容里的图片数量大于9张时调用9张图片,当网站内容里没有图片时显示代替的图片,
  • 08808 2020-12-29
    引用 3
    这个把,复制过来的
    $_post = db_find_one('post', array('tid' => $_thread['tid'], 'isfirst' => 1));
            preg_match_all('//i',$_post['message'],$matches);
            if($matches[1][0]) {
                    echo " ";
            }
            if($matches[1][1]) {
            echo "";
            }

            if($matches[1][2]) {
            echo "";
            }
            ?>
    上面3张,获取一张不用加图片尺寸样式限制,方便。获取多了就需要加,不然手机端图片会竖着,并非会横向一排多张。
    再说获取多了加载慢,影响用户浏览体验。
  • oliolo 2020-12-30
    引用 4
    08808 这个把,复制过来的 $_post = db_find_one('post', array('tid' => $_thread['tid'], 'isfirst' => 1)); ...
    有时间我试试,第二个问题代码怎么写啊?
  • 今天 2021-2-27
    引用 5
    假如一张时,位于标题右则
    多张时位于标题下方

    这个要修改列表页,加一个判断 $n 的值 ,输出html结构,再配合修改css,达到显示效果
返回
发新帖