2010-07-19 93 views

回答

3

页面X的引用页面的<title>标记不会存储在X中的任何位置。您需要请求引用页面以获取其<title>标记。

下面是一些PHP代码的链接,将做到这一点: Grab the title of a web page (local or remote)

我要改变一下代码,以满足您的使用情况:

<?php 
    $file = @ fopen($_SERVER['HTTP_REFERER'],"r") or die ("Can't open HTTP_REFERER."); 
    $text = fread($file,16384); 
    if (preg_match('/<title>(.*?)<\/title>/is',$text,$found)) { 
     $title = $found[1]; 
    } else { 
     $title = " -- no title found -- "; 
    } 
?> 

只要保持在介意你不能相信HTTP_REFERER变量,因为浏览器(或插件等)可以改变它。 (1)

0

由于GoalBased建议,首先在给定的URL加载文档。然后:

1)使用众多PHP HTML解析器中的任何一种来查找标题标签。

2)或者,如果你想快速和肮脏,使用正则表达式来找到字符串<title>(.*)</title>,这可能比解析速度快,但偶尔会给你一个误报。