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

PHP
“懒人”的做法:用PHP简易实现中文分词
实例操作:PEAR的HTML_QuickForm7应用
PHP在电影图像中的妙用 合并汉英字幕
实例解说:用Perl来分析并生成中文Excel文件
实用举例:利用PHP代码实现网页自动判断转向
简单了解操控日期和时间的10个Perl CPAN模块
常用编程应用小技巧 PHP获得文件扩展名三法
windows环境下uploaded_file函数如何饶过缺陷
针对配置文件操作 PHP最常用的四个ini函数
用不同文件 构建可配置PHP应用程序的正确方式
精确到每一秒钟 如何实现在线人数的显示?
用PHP写mail函数 配置好后需要重启apache
简单示例:AJAX结合PHP代码实现登录
PHP中引用&的使用注意事项
关于AJAX的N篇贴子整理
社区新闻--PHP5内容管理系统
PHP 开发环境的选择、建立及使用(1)
PHP 开发环境的选择、建立及使用(2)
PHP 开发环境的选择、建立及使用(3)
PHP 开发环境的选择、建立及使用(4)

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-28   浏览: 170 ::
收藏到网摘: 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>