热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

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

要利用php获取文章中所有图片中第一张图片出来我们只需要简单的正则表达式即可实现了,下面小编来给大家分享两个实例吧。首先看一个函数:代码如下复制代码fu

要利用php获取文章中所有图片中第一张图片出来我们只需要简单的正则表达式即可实现了,下面小编来给大家分享两个实例吧。

首先看一个函数:

 代码如下

function getpic($str_img){

    preg_match_all("//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 = '~]* />~';

preg_match_all( $soImages, $soContent, $thePics );

$allPics = count($thePics[0]);

            preg_match('//i',$thePics[0][0],$match);

dump($thePics);

if( $allPics> 0 ){

                echo "%22.%24match%5B1%5D.%22";//获取的图片名称

}

else {

echo "没有图片";

}

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

$soContent = $info['content'];

            $soImages = '~]* />~';

preg_match_all( $soImages, $soContent, $thePics );

$allPics = count($thePics[0]);

dump($thePics);

if( $allPics> 0 ){

echo $thePics[0][0]; //获取的整个Img属性

} else {

echo "没有图片";

}

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

$soImages = '~]* />~';

$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("//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;




推荐阅读
  • PHP 5.2.5 安装与配置指南
    本文详细介绍了 PHP 5.2.5 的安装和配置步骤,帮助开发者解决常见的环境配置问题,特别是上传图片时遇到的错误。通过本教程,您可以顺利搭建并优化 PHP 运行环境。 ... [详细]
  • 优化ListView性能
    本文深入探讨了如何通过多种技术手段优化ListView的性能,包括视图复用、ViewHolder模式、分批加载数据、图片优化及内存管理等。这些方法能够显著提升应用的响应速度和用户体验。 ... [详细]
  • 本文详细介绍了如何使用 Yii2 的 GridView 组件在列表页面实现数据的直接编辑功能。通过具体的代码示例和步骤,帮助开发者快速掌握这一实用技巧。 ... [详细]
  • 网络运维工程师负责确保企业IT基础设施的稳定运行,保障业务连续性和数据安全。他们需要具备多种技能,包括搭建和维护网络环境、监控系统性能、处理突发事件等。本文将探讨网络运维工程师的职业前景及其平均薪酬水平。 ... [详细]
  • 根据最新发布的《互联网人才趋势报告》,尽管大量IT从业者已转向Python开发,但随着人工智能和大数据领域的迅猛发展,仍存在巨大的人才缺口。本文将详细介绍如何使用Python编写一个简单的爬虫程序,并提供完整的代码示例。 ... [详细]
  • PHP 编程疑难解析与知识点汇总
    本文详细解答了 PHP 编程中的常见问题,并提供了丰富的代码示例和解决方案,帮助开发者更好地理解和应用 PHP 知识。 ... [详细]
  • 深入理解 Oracle 存储函数:计算员工年收入
    本文介绍如何使用 Oracle 存储函数查询特定员工的年收入。我们将详细解释存储函数的创建过程,并提供完整的代码示例。 ... [详细]
  • 本文详细介绍了如何使用PHP检测AJAX请求,通过分析预定义服务器变量来判断请求是否来自XMLHttpRequest。此方法简单实用,适用于各种Web开发场景。 ... [详细]
  • 1:有如下一段程序:packagea.b.c;publicclassTest{privatestaticinti0;publicintgetNext(){return ... [详细]
  • 本文详细介绍了如何在Linux系统上安装和配置Smokeping,以实现对网络链路质量的实时监控。通过详细的步骤和必要的依赖包安装,确保用户能够顺利完成部署并优化其网络性能监控。 ... [详细]
  • 1.如何在运行状态查看源代码?查看函数的源代码,我们通常会使用IDE来完成。比如在PyCharm中,你可以Ctrl+鼠标点击进入函数的源代码。那如果没有IDE呢?当我们想使用一个函 ... [详细]
  • 本文详细介绍了Akka中的BackoffSupervisor机制,探讨其在处理持久化失败和Actor重启时的应用。通过具体示例,展示了如何配置和使用BackoffSupervisor以实现更细粒度的异常处理。 ... [详细]
  • 本文介绍了在Windows环境下使用pydoc工具的方法,并详细解释了如何通过命令行和浏览器查看Python内置函数的文档。此外,还提供了关于raw_input和open函数的具体用法和功能说明。 ... [详细]
  • 本文介绍了如何使用PHP代码实现微信平台的媒体素材上传功能,详细解释了API接口的使用方法和注意事项,确保文件路径正确以避免常见的错误。 ... [详细]
  • 帝国CMS多图上传插件详解及使用指南
    本文介绍了一款用于帝国CMS的多图上传插件,该插件通过Flash技术实现批量图片上传功能,显著提升了多图上传效率。文章详细说明了插件的安装、配置和使用方法。 ... [详细]
author-avatar
香港冫耐思得
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有