php 获取文章内容的第一张图片实例

首先看一个函数:

 代码如下 复制代码

function getpic($str_img){
    preg_match_all("/<img.*>/isU",$str,$ereg);//正则表达式把图片的整个都获取出来了
    $img=$ereg[0][0];//图片
    $p="#src=('|")(.*)('|")#isU";//正则表达式
    preg_match_all ($p, $img, $img1);
    $img_path =$img1[2][0];//获取第一张图片路径 
    return $img_path;
    }
//假如数据库已打开,用$nr获取数据库中的新闻内容
$nr=$row_news["nr"];
$aa=getpic($nr_a);
if(!$aa){$aa="images/nopic.jpg";} //如果新闻中不存在图片,用默认的nopic.jpg替换

再看一个函数相对比较复杂了

在做项目的时候,页面的设计有时会留有文章特色图像的位置,可是有时,这篇文章反而没有上传图片,则在页面中显示的时候则是没有图片,样式上很难看,如果单纯是没有上传图片选用默认图片的时候,有时会引起一些误解;则在考虑是不是先对这个文章图片的问题细化处理:先判断是否有上传的图片,如果有则显示上传的图片,没有则判断内容中是否有图片,有则选取第一张图片作为此处的特色图片,如果连内容中也没有图片的话,则在此处显示默认图片;

以下是关于选取文章中第一张图片的代码:

 代码如下 复制代码

$obj=M("News");
$info=$obj->where('id=1')->find();
//方法1*********

            $soContent = $info['content'];
            $soImages = '~<img [^>]* />~';
            preg_match_all( $soImages, $soContent, $thePics );
            $allPics = count($thePics[0]);
            preg_match('/<img.+src="?(.+.(jpg|gif|bmp|bnp|png))"?.+>/i',$thePics[0][0],$match);
            dump($thePics);
            if( $allPics> 0 ){
                echo "<img src='".$match[1]."' title='".$match[1]."'>";//获取的图片名称
            }
            else {
                echo "没有图片";
            }

//**************

            $soContent = $info['content'];
            $soImages = '~<img [^>]* />~';
            preg_match_all( $soImages, $soContent, $thePics );
            $allPics = count($thePics[0]);
            dump($thePics);
            if( $allPics> 0 ){
                echo $thePics[0][0]; //获取的整个Img属性
            } else {
                echo "没有图片";
            }

//**************

            $soImages = '~<img [^>]* />~';
            $str=$info['content'];
            preg_match_all($soImages,$str,$ereg);//正则表达式把图片的整个都获取出来了
            $img=$ereg[0][0];//图片
            $p="#src=('|")(.*)('|")#isU";//正则表达式
            preg_match_all ($p, $img, $img1);
               $img_path =$img1[2][0];//获取第一张图片路径
            if(!$img_path){
                $img_path="images/nopic.jpg";
            } //如果新闻中不存在图片,用默认的nopic.jpg替换 */
            echo $img_path;

//*************88

            $str=$info['content'];
            preg_match_all("/<img.*>/isU",$str,$ereg);//正则表达式把图片的整个都获取出来了
            $img=$ereg[0][0];//图片
            $p="#src=('|")(.*)('|")#isU";//正则表达式
            preg_match_all ($p, $img, $img1);
               $img_path =$img1[2][0];//获取第一张图片路径
            if(!$img_path){
                $img_path="images/nopic.jpg";
            } //如果新闻中不存在图片,用默认的nopic.jpg替换 */
            echo $img_path;

时间: 2024-11-02 06:36:41

php 获取文章内容的第一张图片实例的相关文章

php 获取文章内容的第一张图片示例

以下是关于选取文章中第一张图片的代码:  代码如下 复制代码 $obj=M("News"); $info=$obj->where('id=1')->find(); //方法1********* $soContent = $info['content']; $soImages = '~<img [^>]* />~'; preg_match_all( $soImages, $soContent, $thePics ); $allPics = count($th

php实现获取文章内容第一张图片的方法_php技巧

本文实例讲述了php实现获取文章内容第一张图片的方法.分享给大家供大家参考.具体分析如下: 采用php获取文章内容的第一张图片方法非常的简单,我们最常用的是使用正则了,感兴趣的朋友可以参考一下下面这段代码. 以下是关于选取文章中第一张图片的代码: 复制代码 代码如下: $obj=M("News"); $info=$obj->where('id=1')->find(); //方法1********* $soContent = $info['content']; $soImag

WordPress获取文章内容摘要程序代码

这个是我自己写的获取文章内容摘要程序  代码如下 复制代码 <?php  global $more;    $more = 1;    //1=全文 0=摘要   $my_content = strip_tags(get_the_excerpt(), $post->post_content); //获得文章   $my_content = str_replace(array("rn", "r", "n", " ",

Wordpress自动提取内容中第一张图片作缩略图详解

在php中我们可以使用preg_match与preg_match_all来获取内容中所有图片地址. 第一步:在主题模板的function.php里添加下面的函数  代码如下 复制代码 //截取内容中第一张图片函数 function catch_that_image() {     global $post, $posts;     ob_start();     ob_end_clean();     preg_match('/<imgs[^<>]*?src=['"]([^'&

WordPress如何获取文章内容页特色图像地址

WordPress获取特色图像地址主要需要用到两个函数get_post_thumbnail_id和wp_get_attachment_image_src.下面是分别获取小.中.大.完整.指定图片规格的图片地址的方法. 获取特色图像:指定100x100 <?php $array_image_url = wp_get_attachment_image_src( get_post_thumbnail_id($post->ID), array(100,100)); echo $array_image_

js获取文章内容中的图片

js获取文章内容中的图片 <Script language="VBScript"> <!-- msgbox getphoto("应明确写出问题所在或关键字<img src=""aaa.gif""/>霸王") Function getphoto(strHTML) Dim objRegExp, Match, Matches Set objRegExp = New Regexp objRegExp.Ig

C#获取HTML文本的第一张图片与截取内容摘要示例代码_C#教程

获取第一张图片 要我们获得到的数据是一段HTML文本.也许这段文本里面有许多图片.需要截取一张作为标题图片.也就是做为主图.这时就可以用到下面这个方法获取到第一张图片. 示例代码 #region 获取第一张图片 /// <summary> /// 获取HTML文本的图片地址 /// </summary> /// <param name="content"></param> /// <returns></returns&g

php正则获取文章内容中图片地址例子

 代码如下 复制代码 例子 function getpic($str){  preg_match_all("//isU",$str,$ereg);//正则表达式把图片的整个都获取出来了      $img=$ereg[0][0];//图片     $p="#src=('|\")(.*)('|\")#isU";//正则表达式     preg_match_all ($p, $img, $img1);      $img_path =$img1[2]

动易CMS的SEO优化之获取文章内容前200个字

中介交易 http://www.aliyun.com/zixun/aggregation/6858.html">SEO诊断 淘宝客 云主机 技术大厅 大家好!第一次写文章,目的在于我为人人,人人为我,感谢网络分享了这么多的知识给我,我将我的一点点小小心得与大家分享! 大家都知道,网页中descrption描述的权重不高,不过能让每篇文章的descrption都不同,是SEO优化的重要手段之一,给用动易的朋友分享,如何获取文章前200个字做descrption描述! 先看一下效果!我的婴儿网