当前位置:首页 > PHP教程 > 正则表达式 > 列表

PHP提取字符串中的图片地址2种方法

发布:smiling 来源: PHP粉丝网  添加日期:2014-06-19 08:24:41 浏览: 评论:0 

文章有两个正则匹配图片的例子,头一个是获取文章中所有图片地址出来,第二个例子就是只要以http,https打开的图片地址,第二个例子多半用来采集远程图片,第一个例子多半用来获取字符串中图片地址或提取第一张图片.

例子1 获取字符串中所有图片:

  1. <?php 
  2. $str='<p><img border="0" src="upfiles/2009/07/1246430143_1.jpg" alt=""/></p>'
  3. $pattern="/<[img|IMG].*?src=[\'|\"](.*?(?:[\.gif|\.jpg]))[\'|\"].*?[\/]?>/"
  4. preg_match_all($pattern,$str,$match); 
  5. print_r($match); 
  6. ?> 

结果显示:

  1. Array 
  2. [0] => Array 
  3. [0] => <img border=”0″ src=”upfiles/2009/07/1246430143_1.jpg” alt=””/> 
  4.  
  5. [1] => Array 
  6. [0] => upfiles/2009/0(www.phpfensi.com)7/1246430143_1.jpg 
  7.  

例子2,这个函数是提取站外以http,https

  1. /** 
  2. * 提取字符串中图片url地址 
  3. * @param type $str 
  4. * @return type 
  5. */ 
  6. function getimgs($str) { 
  7.     $reg = '/((http|https):\/\/)+(\w+\.)+(\w+)[\w\/\.\-]*(jpg|gif|png)/'
  8.     $matches = array(); 
  9.     preg_match_all($reg$str$matches); 
  10.     foreach ($matches[0] as $value) { 
  11.         $data[] = get_file($value); 
  12.     } 
  13.     return $data

Tags: PHP提取 图片地址

分享到: