> php教程 > php手册 > 网站当前在线人数的实现

网站当前在线人数的实现

WBOY
풀어 주다: 2016-06-13 10:24:44
원래의
867명이 탐색했습니다.

一个网站最重要的组成部分可能就是与你链接的站点的个数。这个教程将向你显示一个使用AltaVista
搜索引擎来实现的简单方法。
  首先,我们需要准备在脚本中使用的URL 。这个可以使用:
http://www.altavista.com/cgi-bin/query?kl=XX&pg=q&text=yes&q=link%3A&search=Search。
  应该知道这是AltaVista的一个文本版本。这样可以节省我们大量的需要解析HTML的代码。接着,我们
需要确切的URL。我们应该使用rawurlencode()来处理URL保证Altavista能够正确地处理它。


$url = http://www.php.net;
$url_encoded = rawurlencode($url);
$url_to_check = "http://www.altavista.com/cgi-bin/query?
kl=XX&pg=q&text=yes&q=link%3A$url_encoded&search=Search";
?>
  现在我们有了我们需要的全部的URL 。到了我们抓回URL 的时候了。这步工作是通过使用file()函数。

$url = http://www.php.net;
$url_encoded = rawurlencode($url);
$url_to_check = "http://www.altavista.com/cgi-bin/query?
kl=XX&pg=q&text=yes&q=link%3A$url_encoded&search=Search";
$alta_search = file($url_to_check);
?>
  现在我们所抓回的文件已经存放在数组$alta_search中。我们现在要在数组中查找我们想要的文本。我们想要的文本就是"About (.*) pages found. "。(.*)表示在两个单词之间的任何东西。而且,如果没有人链接我们的URL,AltaVista将显示"AltaVista found no document matching your query."。因为我们想知道多少个人正在与我们的URL进行着链接,那段文本将被看作0个人链接。



$url = http://www.php.net;
$url_encoded = rawurlencode($url);
$url_to_check =
"http://www.altavista.com/cgi-bin/query?kl=XX&pg=q&text=yes&q=link%3A$url_encoded&search=Search";
$alta_search = file($url_to_check);
for ($i = 0; $i if(eregi( "About (.*) pages found.", $alta_search[$i])){
$how_many = eregi_replace( "
About (.*) pages found.", "1", $alta_search
[$i]);
}elseif(eregi( "AltaVista found no document matching your query.", $alta_search
[$i])){
$how_many = 0;
}
}
?>
  为了使用上面的处理结果,你可以加入这句代码来打印我们的查找结果:
echo "$how_many people are linking to $url";
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
최신 이슈
인기 추천
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿