php - Typecho 截取文章第一张图片报错 Notice: Undefined offset: 0
怪我咯
怪我咯 2017-04-10 15:03:36
[PHP讨论组]

函数代码

function img_postthumb($content) {   
   preg_match_all("/\<img.*?src\=\"(.*?)\"[^>]*>/i", $content, $thumbUrl);
   $img_src = $thumbUrl[1][0];
   $img_counter = count($thumbUrl[0]);
  
   switch ($img_counter > 0) {   
       case $img_counter = 1:   
           echo $img_src; 
           break;   
       default:   
           echo "noimage.jpg";
   };   
}

调用代码

<?php echo img_postthumb($this->content); ?>  

有图片的文章截取后没有错误,没有图片的文章会报错:Notice: Undefined offset: 0

请问如何改进才没有报错。

怪我咯
怪我咯

走同样的路,发现不同的人生

全部回复(2)
PHP中文网

改成这样试试?

function thumbnail($content) {
    $pattern = '/\<img.*?src\=\"(.*?)\"[^>]*>/i';

    if (preg_match_all($pattern, $content, $thumbUrl)) {
        $imgSrc = $thumbUrl[1][0];
        echo $imgSrc;
    } else {
        echo 'noimage.jpg';
    }
}
高洛峰

谢谢,已经可以了。

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号