php生成 google map代码

原创
2016-06-08 17:30:42 657浏览

php生成 google map代码

Google Sitemap生成器










正在检索:


/*===========================================================
= 版权协议:
= GPL ()
=------------------------------------------------------------
= 摘 要:URL收集函数 PHP5
= 版 本:1.0
=------------------------------------------------------------
= 开源stal 项目组
= 更新作者:jd808
= 最后日期:2008-4-18
============================================================*/

$file='sitemap.xml'; //GOOGLE 需要的文件 执行时则做首页的临时URL存储文件
$temp_file='temp.xml';//内页URL临时存储文件
$url="http://www.gyqpw.com/"; //要搜索的网站
$timea=time();//开始时间 用户无需理它 只管上面3个参数即可
if(!$_GET['i'])
{
file_put_contents($file,'');
file_put_contents($temp_file,'');
file_put_contents($file,con($url,$timea));

echo "";
}else{
consts($_GET['i'],$timea,$file,$url);
}
function con($url,$timea) //控制
{
echo "";

$str = file_get_contents($url);

$collection_url=collection_url($str,$url);

$collection_url=array_flip($collection_url);
foreach($collection_url as $key=>$value)
{
if(count(explode($url,$key))==2)
{
$strurl.=$key."\n";
}
}

return $strurl;
}
function consts($i,$timea,$file,$urlys)
{
$str =file_get_contents($file); //读取页面数据并生产字符串

$url=explode("\n",$str);

$sum=count($url)-1;

if($i=='bak')
{
$i=0;
}

/*进度条*/
$wid=round($i/$sum*100,2)."%";
$div="
$wid
";
echo '';

ob_flush();//释放缓存
flush(); //将不再缓存里的数据发送到浏览器去
/*进度条END */

for($j=$i;$j<$sum;$j++)
{
if(!$url[$j])
{
continue;
}

if(!detection_url($url[$j])) //检测URL是否合法
{
continue;
}

$timeb=time();//跟踪时间
if(($timeb-$timea)>=25)
{
memory($collection_url,$j); //存储数据
}
/* URL显示跟踪*/
echo "";
ob_flush();//释放缓存
flush(); //将不再缓存里的数据发送到浏览器去
/* URL显示跟踪END*/
$urlstr=@file_get_contents($url[$j]);

$collection_url[]=collection_url($urlstr,$urlys);

$timec=time();//跟踪时间
if(($timec-$timea)>=25)
{
memory($collection_url,$j); //存储数据
}

if($j==$sum-1)
{
memorys(); //存储数据 主要是生成正式的xml
}
}
}
function collection_url($str,$url) //收集URL并返回一个数组(以页面为主)
{
preg_match_all('/
$urlexp=$matches[1];

for($j=0;$j {
$urlexp[$j]=ltrim(str_replace("\r\n",'',$urlexp[$j]));
$urlexp[$j]=ltrim(str_replace("\n",'',$urlexp[$j]));
$urlexp[$j]=ltrim(str_replace("\r",'',$urlexp[$j]));

if($urlexp[$j]=='//m.sbmmt.com/m/faq/#')
{
continue;
}

if($urlexp[$j]=='/#')
{
continue;
}

if(!strchr($urlexp[$j],'http://'))
{//没有http://
$urlall[]=$url.$urlexp[$j];
echo $url.$urlexp[$j].'
';
print "";
ob_flush();//释放缓存
flush(); //将不再缓存里的数据发送到浏览器去

}else{
if(count(explode($url,$urlexp[$j]))==2)
{
$urlall[]=$urlexp[$j];

echo $urlexp[$j].'
';
print "";
ob_flush();//释放缓存
flush(); //将不再缓存里的数据发送到浏览器去
}else{
unset($urlexp[$j]);
}
}
}
return $urlall; //返回本页面搜索所得到的数组
}
function memory($collection_url,$i)
{

global $temp_file;

if(is_array($collection_url))
{
for($h=0;$h {
for($l=0;$l {
$strts.=$collection_url[$h][$l]."\n";
}

}

$wstr=file_get_contents($temp_file);

file_put_contents($temp_file,$wstr.$strts);

if($i==0)
{
$i=2;
}

$k=$i-1;

echo "";
exit;
}
}
function memorys() //主要是生成正式的xml
{
global $temp_file,$file;

$file_arr=array_flip(file($file));

$temp_file_arr=array_flip(file($temp_file));

$xmla=''."\r\n".'';

$xmlc="\r\n
";

foreach($file_arr as $keya=>$valuea)
{
$keya=ltrim(str_replace("\r\n",'',$keya));
$keya=ltrim(str_replace("\n",'',$keya));
$keya=ltrim(str_replace("\r",'',$keya));

$xml.='
'.$keya.'
'.date("Y-m-d",time()).'
daily
';
}

foreach($temp_file_arr as $keyb=>$valueb)
{
$keyb=ltrim(str_replace("\r\n",'',$keyb));
$keyb=ltrim(str_replace("\n",'',$keyb));
$keyb=ltrim(str_replace("\r",'',$keyb));

$xml.='
'.$keyb.'
'.date("Y-m-d",time()).'
daily
';
}

$strts=$xmla.$xml.$xmlc;

file_put_contents($file,$strts);

echo "";
}
function detection_url($url)
{
if(strrchr($url,'='))
{
return true;
}

if(substr($url,strlen($url)-1,1)=='//m.sbmmt.com/m/')
{
return true;
}

$postfix= strrchr($url,'.');

switch ($postfix)
{
case ".php":
return true;
break;

case ".html":
return true;
break;

case ".htm":
return true;
break;

case ".asp":
return true;
break;

case ".aspx":
return true;
break;

case ".shtml":
return true;
break;
}
return false;
}
?>

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
上一条:正则表达式三 下一条:正则表达式二

相关文章

查看更多