欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

Typecho 截取文章第一张图片报错 Notice: Undefined offset: 0

程序员文章站 2024-01-08 13:13:46
...
函数代码
function img_postthumb($content) {   
   preg_match_all("/\]*>/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";
   };   
}

调用代码

content); ?>  

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

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

回复内容:

函数代码

function img_postthumb($content) {   
   preg_match_all("/\]*>/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";
   };   
}

调用代码

content); ?>  

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

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

改成这样试试?

function thumbnail($content) {
    $pattern = '/\]*>/i';

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

谢谢,已经可以了。

相关标签: php