php实现获取文章内容第一张图片的方法
发布:smiling 来源: PHP粉丝网 添加日期:2021-04-23 10:33:04 浏览: 评论:0
这篇文章主要介绍了php实现获取文章内容第一张图片的方法,涉及对正则表达式的操作,非常具有实用价值,需要的朋友可以参考下
本文实例讲述了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($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;
php获取文章html内容第一张图片地址
php实现获取文章html内容第一张图片地址,示例采用正则表达式实现,代码仅供参考。也可以稍作修改即可获取文章内容中全部图片地址,具体业务具体扩展。
- // 注意这个变量中img标签末尾的细节变化
- $str='<center>
- <img src="http://www.xxxx.com/1.jpeg">
- <img src="http://www.xxxx.com/2.jpeg" >
- <img src="http://www.xxxx.com/3.jpeg"/>
- <img src="http://www.xxxx.com/4.jpeg" />
- </center>';
- echo get_html_first_imgurl($str);
- exit;
- /**
- * 获取文章内容html中第一张图片地址
- */
- function get_html_first_imgurl($html){
- $pattern = '~]*[\s]?[\/]?[\s]?>~';
- preg_match_all($pattern, $html, $matches);//正则表达式把图片的整个都获取出来了
- $img_arr = $matches[0];//全部图片数组
- $first_img_url = "";
- if (!emptyempty($img_arr)) {
- $first_img = $img_arr[0];
- $p="#src=('|\")(.*)('|\")#isU";//正则表达式
- preg_match_all ($p, $first_img, $img_val);
- if(isset($img_val[2][0])){
- $first_img_url = $img_val[2][0]; //获取第一张图片地址
- } //www.phpfensi.com
- }
- return $first_img_url;
- }
希望本文所述对大家的PHP程序设计有所帮助。
Tags: php获取文章内容图片
推荐文章
热门文章
最新评论文章
- 写给考虑创业的年轻程序员(10)
- PHP新手上路(一)(7)
- 惹恼程序员的十件事(5)
- PHP邮件发送例子,已测试成功(5)
- 致初学者:PHP比ASP优秀的七个理由(4)
- PHP会被淘汰吗?(4)
- PHP新手上路(四)(4)
- 如何去学习PHP?(2)
- 简单入门级php分页代码(2)
- php中邮箱email 电话等格式的验证(2)