当前位置: 首页 > 图文教程 > 网络编程 > PHP > PHP实例教程:天气预报小偷PHP代码

PHP
PHP新手总结的PHP基础知识
php实现gb2312和unicode间编码转换
用php语言实现数据库连接详细代码介绍
详细解析 PHP 向 MySQL 发送数据过程
利用PHP V5开发多任务应用程序
详细讲解PHP中缓存技术的应用
php escapeshellcmd多字节编码漏洞
《PHP设计模式介绍》导言
《PHP设计模式介绍》第一章 编程惯用法
《PHP设计模式介绍》第二章 值对象模式
《PHP设计模式介绍》第三章 工厂模式
《PHP设计模式介绍》第四章 单件模式
《PHP设计模式介绍》第五章 注册模式
《PHP设计模式介绍》第六章 伪对象模式
《PHP设计模式介绍》第七章 策略模式
《PHP设计模式介绍》第八章 迭代器模式
《PHP设计模式介绍》第九章 观测模式
《PHP设计模式介绍》第十章 规范模式
《PHP设计模式介绍》第十一章 代理模式
《PHP设计模式介绍》第十二章 装饰器模式

PHP实例教程:天气预报小偷PHP代码


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-28   浏览: 276 ::
收藏到网摘: n/a

写得一个php天气小偷程

<?php
/***
天气预报
***/
function readAll($location)
{
 $MAX_RETRY_NUM = 3;
 if(preg_match("/(http:\/\/)?([^\/|\:]+)(:\d{1,5})?(\/.+)?/", $location, $url))
 {
  list(,,$host,$port,$path) = $url;
  $port = preg_replace("/:/", "", $port);
  $port = strlen($port) ? $port : 80;
  $path = strlen($path) ? $path : "/";
  $request  = "GET $path HTTP/1.0\r\n";
  $request .= "Host: $host\r\n";
  $request .= "Accept: */*\r\n";
  $request .= "Connection: close\r\n";
  $request .= "User-Agent: superspice's BOT\r\n\r\n";
  $retry = 0;
  $do = false;
  do
  {
   if(@!$socket =fsockopen($host, $port, &$errMsg, &$errCode ))
   {
    return false;
   }
   fwrite($socket, $request);
   $flag = true;
   $header = "";
   $body = "";
   while(!feof($socket))
   {
    $line = fgets($socket, 128);
    if($flag)
    {
     if(trim(chop($line)) == "")
     {
      $flag = false;
     }
     else
     {
      $header .= $line;
     }
    }
    else
    {
     $body .= $line;
    }
   }
   if(preg_match("/Content-Length: (\d+)/", $header, $out))
   {
    $header_length = $out[1];
    if($header_length != strlen($body))
    {
     $do = true;
    }
    else
    {
     $do = false;
    }
   }
   if(is_resource($socket))
   {
    fclose($socket);
   }
   $retry ++;
  }while($do && $retry<$MAX_RETRY_NUM);
 }
 return $body;
}
function get_weather()
{
 $TqUrl="http://www.ttqx.com.cn/forecast/area_weather.asp?city_name=合肥&zhou=yz";
 $VaX1Tem=readAll($TqUrl);
 if(!$VaX1Tem)
 {
  return false;
 }
 settype($ArrayTq,"array");
 $ArrayTq=explode("<!--天气预报开始-->",$VaX1Tem);
 $ArrayTq=explode("<!--天气预报结束-->",$ArrayTq[1]);
 $flash = explode("<object classid=\"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000\"",$ArrayTq[0]);
 $flash = "<object classid=\"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000\"".$flash[1];
 $flash = explode("</EMBED></object>",$flash);
 $flash = $flash[0]."</EMBED></object>";
 $pattern = array("/images\/weather/i","/WIDTH=\"65\" HEIGHT=\"70\"/i");
 $replace = array("http://www.ttqx.com.cn/forecast/images/weather","WIDTH=\"51\" HEIGHT=\"55\"");
 $flash = preg_replace($pattern,$replace,$flash);
 //天气
 $ArrayTqTem2=explode('<tr><td>',$ArrayTq[0]);
 $ArrayTqTem2=explode('</td></tr>',$ArrayTqTem2[1]);
 //$ArrayTqTem2=explode('<td>',$ArrayTqTem2[0]);
 $ArrayTqTem2=$ArrayTqTem2[0];
 //风力
 $ArrayTqTem3=explode('<tr><td>',$ArrayTq[0]);
 $ArrayTqTem3=explode('</td></tr>',$ArrayTqTem3[2]);
 //$ArrayTqTem3=explode('<td>',$ArrayTqTem3[0]);
 $ArrayTqTem3=$ArrayTqTem3[0];
 //温度
 $ArrayTqTem4=explode('<tr><td>',$ArrayTq[0]);
 $ArrayTqTem4=explode('</td></tr>',$ArrayTqTem4[3]);
 //$ArrayTqTem4=explode('<td>',$ArrayTqTem4[0]);
 $ArrayTqTem4=$ArrayTqTem4[0];
 if( !$ArrayTqTem2 or !$ArrayTqTem3 or !$ArrayTqTem4)
 {
  return false;
 }
 //$TqVar=$ArrayTqTem2.",".$ArrayTqTem3."<br>气温:".$ArrayTqTem4;
 $weather[0]=$flash;
 $weather[1]=$ArrayTqTem2;
 $weather[2]=$ArrayTqTem3;
 $weather[3]=$ArrayTqTem4;
 return $weather;
}
$weather = get_weather();
?>

上面写的是php文件,你没有echo当然不能正常显示啦

<?php
error_reporting(0);
include_once ("../include/weather.php");
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>天气预报</title>
<style>
html,body {margin:0;padding:0; font-size:12px;}
div {width:178px; height:58px;position:relativ;position:relative}
img {width:178px; height:58px; z-index:1;position:absolute; border:0}
object { margin-top:2px; margin-left:8px;}
span{position:absolute;top:2px;right:12px;}
li{font-family:Verdana,宋体;list-style:none;margin-top:3px; letter-spacing:1px;}
</style>
</head>
<body>
<div>
<a href="http://www.ttqx.com.cn/tqyb/" target="_blank"><img src="http://links.ezz.cc/blank.gif" /></a><?php echo $weather[0]; ?><span><li><?php echo $weather[1]; ?></li> <li><?php echo $weather[2]; ?></li> <li><?php echo $weather[3]; ?></li></span>
</div>
</body>
</html>