您好!欢迎来到百智盟!

php获取网页meta信息(包括title、keywords、description)的两种方法

摘要:使用get_meta_tags函数获取meta信息比如我们要获取http://www.taobao.com这个网页的meta信息,可以直接使用php内置函数get_meta_tags获取,代码如下:<?php       $meta_tags = get_meta_tags(”http://www.taobao.com”); &

使用get_meta_tags函数获取meta信息

比如我们要获取http://www.taobao.com这个网页的meta信息,可以直接使用php内置函数get_meta_tags获取,代码如下:

<?php  
    $meta_tags = get_meta_tags("http://www.taobao.com");
    print_r($meta_tags);?>

结果输出:

Array(
    [renderer] => webkit
    [spm-id] => a21bo
    [description] => 淘宝网 - 亚洲最大、最安全的网上交易平台,提供各类服饰、美容、家居、数码、话费/点卡充值… 8亿优质特价商品,同时提供担保交易(先收货后付款)、先行赔付、假一赔三、七天无理由退换货、数码免费维修等安全交易保障服务,让你全面安心享受网上购物乐趣!
    [keyword] => 
)

 

使用正则表达式获取meta信息

PHP代码如下:

$site = "http://www.manongjc.com"; 
$content = get_sitemeta($site);
print_r($content);
/** 获取META信息 */
function get_sitemeta($url) {
    $data = file_get_contents($url);
    $meta = array();
    if (!empty($data)) {
         #Title
         preg_match('/<TITLE>([wW]*?)</TITLE>/si', $data, $matches);
         if (!empty($matches[1])) {
              $meta['title'] = $matches[1];
         }
       
         #Keywords
         preg_match('/<METAs+name="keywords"s+content="([wW]*?)"/si', $data, $matches);        
         if (empty($matches[1])) {
              preg_match("/<METAs+name='keywords's+content='([wW]*?)'/si", $data, $matches);              
         }
         if (empty($matches[1])) {
              preg_match('/<METAs+content="([wW]*?)"s+name="keywords"/si', $data, $matches);              
         }
         if (empty($matches[1])) {
              preg_match('/<METAs+http-equiv="keywords"s+content="([wW]*?)"/si', $data, $matches);              
         }
         if (!empty($matches[1])) {
              $meta['keywords'] = $matches[1];
         }
       
         #Description
         preg_match('/<METAs+name="description"s+content="([wW]*?)"/si', $data, $matches);        
         if (empty($matches[1])) {
              preg_match("/<METAs+name='description's+content='([wW]*?)'/si", $data, $matches);              
         }
         if (empty($matches[1])) {
              preg_match('/<METAs+content="([wW]*?)"s+name="description"/si', $data, $matches);                        
         }
         if (empty($matches[1])) {
              preg_match('/<METAs+http-equiv="description"s+content="([wW]*?)"/si', $data, $matches);              
         }
         if (!empty($matches[1])) {
              $meta['description'] = $matches[1];
         }
    }
    return $meta;
}


平台客服
Q Q :251100959(+注明:百智盟)
电话:40088*****
邮箱:bzm@qyxfh.com
时间:10:00-22:00