您好,登錄后才能下訂單哦!
小編給大家分享一下PHP怎么實現搜索引擎類,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
PHP搜索引擎類1.類文件:
class grabble{
var $filename;
var $html;
var $urls = array(); //url歷史
var $url ;
var $url_1;
function grabble(){
set_time_limit(3600);
}
function set($_filename){
$this->filename = $_filename;
array_push ($this->url, $_filename);
}//end.set;
function set_url($_url){
eregi('(^http://.*[^/]).*' , $_url , $array);
$this->url = $array[1] . "/";
eregi('(^http://.*[^/]).*' , $_url , $array);
//print_r($array);
$this->url_1 = $array[1];
}
function get(){
}//end.get;
function get_html($_filename=null){
$this->filename = $_filename;
$this->html = @implode('', file($_filename)) ;
return $this->html;
}//end.get_html;
function get_title($_str=null){
preg_match_all("/<title>(.*)<\/title>
/Uis", $_str, $matches);
return $matches[1][0];
}//end.get_title;
function get_img($_str=null){
preg_match_all("/<img\s+[^>]*\s*src\s*=
\s*([\'\"]?)([^\'\">\s]*)\\1\s*[^>]*>/i",
$_str, $arr);
print_r($arr[2]);
}
function get_link($_str=null){
preg_match_all("/<a.*href=[\'|\"](.+)?
[\'|\"].*>.+<\/a>/Uis", $_str, $arr);
//print_r($arr);
return $arr[1];
}//end.get_link;
function get_link_name($_str=null){
preg_match_all("/<a.*href=[\'|\"](.+)?
[\'|\"].*>(.+)<\/a>/Uis", $_str, $arr);
return $arr[2];
}//end.get_link_name;
function link_list($_url=null, $_c=0){
eregi('(^http://.*)/.*' , $_url , $array);
$_url_0 = $array[1];
$_html = $this->get_html($_url);
$_link = $this->get_link($_html);
$_list = $this->get_link_name($_html);
$s = "";
for($i=0;$i<count($_link);$i++){
$s .= "<br/>" . "<INPUT TYPE='checkbox'
NAME='link_name[]' value='" .$_link[$i]. "'
/>" . $_list[$i] . " ";
echo "<br/>" . "<INPUT TYPE='checkbox'
NAME='link_name[]' value='" .$_link[$i]. "'
/>" . $_list[$i] . " ";
echo "<a href='" . $_url_0 . "/" . $_link[$i]
. "' target='_blank'>" . $_url_0 . "/" .
$_link[$i] . "</a>";
if($_c < 3){
if(eregi('^[$_url_0|mailto:].*' ,$_link[$i])){
echo "<a href='" . $_link[$i] . "'
target='_blank'>" . $_link[$i] . "</a>";
$s .= $this->link_list( $_link[$i] , $_c+1);
}
elseif(!eregi('^[http://|ftp://|file:///].
*' ,$_link[$i])){
$s .= $this->link_list( $_url_0 . "/" . $_link[$i] , $_c+1);
}
}
}
return $s;
}//end.link_list;
}//end.grabble.
PHP搜索引擎類2.調用實例:
< ?php
require_once("grabble.
class.php");$gf = new grabble();
echo $gf->link_list(
'http://10.22.65.101/');?>
以上是“PHP怎么實現搜索引擎類”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。