加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php结合飞信 免费天气预报短信

发布时间:2020-12-13 05:31:51 所属栏目:PHP教程 来源:网络整理
导读:开始教你怎么弄 一、需要有一个PHP环境。为了图省事下载APMServ软件快速搭建PHP环境 二、下载天气预报短信通知PHP程序点A href="http://xiazai.jb51.cc/200905/yuanma/WeatherForecast.rar"gt;这里下载代码 三、修改PHP程序配置 用记事本打开WeatherForecast

开始教你怎么弄
一、需要有一个PHP环境。为了图省事下载APMServ软件快速搭建PHP环境
二、下载天气预报短信通知PHP程序点<A href="http://xiazai.52php.cn/200905/yuanma/WeatherForecast.rar"&gt;这里下载代码
三、修改PHP程序配置
用记事本打开WeatherForecast.php文件
<div class="codetitle"><a style="CURSOR: pointer" data="60310" class="copybut" id="copybut60310" onclick="doCopy('code60310')"> 代码如下:<div class="codebody" id="code60310">
<?
/*
飞信通知天气预报
2009-4-23
/ //禁止执行时间限制
set_time_limit (0); //设置MB编码
mb_internal_encoding("GB2312"); /*
采集新浪天气预报信息

@param string $city城市名称
@return unknown
/
function getWF($city){ if(empty($city)) return "";
$wf=@file_get_contents('http://php.weather.sina.com.cn/search.php?city='.urlencode($city).'&f=1&dpc=1');
if (empty($wf)){
return "";
} //截取相关信息
$return = "";
$star=strpos($wf,"<div class="blk-s3">");
$return = substr($wf,$star,1000);
$end2=strpos($return,"");
$return = strip_tags(substr($return,$end2));
//过滤
$return = str_replace("","",$return);
$return = str_replace(" ",$return);
$return = str_replace("t",$return);
$return = str_replace("n",$return);
$return = str_replace("℃","度",$return);
$return = str_replace("≤",$return);
$return = trim(str_replace("r",",$return),");
$return = str_replace("~","-",$return);
$return = str_replace(":",":",$return); //返回值
return $return;
} //飞信账号设置
$Fetion['user']='';
$Fetion['pass']=''; //设置天气预报城市
$citys[]=array('id'=>'bj','name'=>'北京');
$citys[]=array('id'=>'sy','name'=>'沈阳'); //北京手机号
$tel['bj'][]='137XXXXXXX';
$tel['bj'][]='137XXXXXXX';
//沈阳手机号
$tel['sy'][]='138XXXXXXXX';
$tel['sy'][]='137XXXXXXX';
if (is_array($citys)&&count($citys)>0){ //遍历城市
foreach($citys as $city){ //获取采集信息
$info=getWF($city['name']); if (!empty($info)){
if (is_array($tel[$city['id']])&&count($tel[$city['id']])>0){ //大信息量处理
if (mb_strlen($info)>171){
$sum=ceil(mb_strlen($info)/168)-1;
for($i=0;$i<=$sum;$i++){
$starj=168*$i;
$qInfo=mb_substr($info,$starj,168);
$n=$i+1;
foreach($tel[$city['id']] as $val){
$url="http://sms.api.bz/fetion.php?username=".$Fetion['user']."&password=".$Fetion['pass']."&sendto=".$val."&message=".urlencode("天气预报[".$n."],"."明天".date("Y年m月d日")." ".$city['name']." ".$qInfo);
@file_get_contents($url);
}
}
}else{
foreach($tel[$city['id']] as $val){
$url="http://sms.api.bz/fetion.php?username=".$Fetion['user']."&password=".$Fetion['pass']."&sendto=".$val."&message=".urlencode("天气预报,明天".date("Y年m月d日")." ".$city['name']." ".$info);
@file_get_contents($url);
}
}
}
}
}
}
?>

修改
<div class="codetitle"><a style="CURSOR: pointer" data="52024" class="copybut" id="copybut52024" onclick="doCopy('code52024')"> 代码如下:<div class="codebody" id="code52024">
//飞信账号设置
$Fetion['user']='自己的飞信账号手机号';
$Fetion['pass']='登录飞信密码';

你所在的城市修改
<div class="codetitle"><a style="CURSOR: pointer" data="29997" class="copybut" id="copybut29997" onclick="doCopy('code29997')"> 代码如下:<div class="codebody" id="code29997">
//设置天气预报城市
$citys[]=array('id'=>'bj','name'=>'北京');

修改你要收到天气预报的手机号码可以为多个
<div class="codetitle"><a style="CURSOR: pointer" data="69518" class="copybut" id="copybut69518" onclick="doCopy('code69518')"> 代码如下:<div class="codebody" id="code69518">
//北京手机号
$tel['bj'][]='137XXXXXXX';
$tel['bj'][]='137XXXXXXX';

这里的bj要与设置城市中的bj相同
好了配置完成可以测试执行一下是否可以收到天气预报信息。
四、设置每日定时发送
如果是WINDOWS环境设置计划任务
开始->程序->附近->系统工具->计划任务
添加任务 根据提示操作 重点在执行程序选择PHP.exe
选择你安装APMServ所在位子我本地的是D:APMServ5.2.6PHPphp.exe WeatherForecast.php绝对路径
我本地为 D:APMServ5.2.6PHPphp.exe D:APMServ5.2.6wwwhtdocsWeatherForecast.php
完成。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读