使用PHP免费发送定时短信的实例


Posted in PHP onOctober 24, 2016

由于飞信目前没有开发平台,现有API都是第三方开发,貌似是通过破解WAP飞信或者3G飞信,模拟浏览器的行为来发短信。另外Google code上有开源的php飞信发送类php-fetion。这些飞信接口方便了定时短信的开发。

背景:老妈年纪大了,文化程度不高,但是需要每天了解天气信息才能下地工作,也就无法通过网络获取天气,只能通过电视。于是寻思着自己抓取网络上的天气信息,通过手机短信发送给老妈。

问题:自己不可能每天定时给老妈发送天气短信,现有的天气预报订阅短信又是要钱的。

解决:

免费发送短信到手机

方案1:使用飞信API

由于飞信目前没有开发平台,现有API都是第三方开发,貌似是通过破解WAP飞信或者3G飞信,模拟浏览器的行为来发短信。另外Google code上有开源的php飞信发送类php-fetion(http://code.google.com/p/php-fetion/)。这些飞信接口方便了定时短信的开发。

唯一的缺点就是第三方的API不稳定,也有飞信账号泄露的风险。

此处,我使用http://3.ibtf.sinaapp.com/提供的飞信API进行短信发送。

该API只需提供发送者手机号,密码,接受者手机号,消息内容作为url参数即可。唯一需要注意的是中文的乱码问题(使用gbk而不是utf-8编码,直接输入中文乱码,输入中文的gbk编码手机接收正常),可以使用iconv函数或者加上参数”&u=1”解决。

方案2:使用139邮箱的短信提醒功能

139邮箱也是中国移动的一项业务,提供了邮件短信提醒的功能。只要在邮箱里面设置邮件到达通知就OK了,除了彩信,其他的长短信,普通短信,免提短信都是免费的。注意,时间久了,发件箱和收件箱都要清除一下,以免占用过多空间而影响正常使用。

另外,只需要编写一个简单的邮件发送的php脚本。而新浪SAE也提供了此Mail服务。使用Mail服务里的函数,可以快速发送邮件,代码如下:

<?php 
$mail = new SaeMail(); 
$ret = $mail->quickSend(  
'收件人@139.com' ,  
'这是主题' , 
'这是正文' , 
'这是发件人邮箱' ,  
'这是发件人密码' , 
'这是smtp服务host' ,  
[这是smpt服务端口] );  
//发送失败时输出错误码和错误信息 
if ($ret === false) 
var_dump($mail->errno(),$mail->errmsg()); 
?>

效果如下:使用PHP免费发送定时短信的实例

使用PHP免费发送定时短信的实例

短信成功发送后,就需要定时了。还好新浪SAE提供了Cron服务。Cron服务是SAE为开发者提供的分布式定时服务,用来定时触发开发者的特定动作,满足比如定时计算排行榜等需求。Cron的设置是通过App的config.yaml来实现的,只要用户在App目录下的config.yaml里按照我们的提供的语法格式进行配置,部署后就能生效。

增加Cron

编辑saetest/1/config.yaml,增加cron段,config.yaml示例如下: 

name: saetest 
version: 1 
cron: 
- description: cron test 
url: mycron/test.php 
schedule: $2 day of october 19:00 
timezone: Beijing 
- description: another cron test 
url: mycron/another_test.php 
schedule: every 10 mins 
timezone: Beijing

上面的示例描述了两个定时任务:每年10月2日19点执行mycron/test.php;每隔10分钟执行mycron/another_test.php

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
PHP.MVC的模板标签系统(五)
Sep 05 PHP
frename PHP 灵活文件命名函数 frename
Sep 09 PHP
PHP 类商品秒杀计时实现代码
May 05 PHP
深入理解用mysql_fetch_row()以数组的形式返回查询结果
Jun 05 PHP
奉献出一个封装的curl函数 便于调用(抓数据专用)
Jul 22 PHP
PHP中子类重载父类的方法【parent::方法名】
May 06 PHP
让你的PHP7更快之Hugepage用法分析
May 31 PHP
基于thinkPHP实现的微信自定义分享功能示例
Sep 23 PHP
PHP简单读取xml文件的方法示例
Apr 20 PHP
thinkphp框架page类与bootstrap分页(美化)
Jun 25 PHP
php使用imagecopymerge()函数创建半透明水印
Jan 25 PHP
PHP7使用ODBC连接SQL Server2008 R2数据库示例【基于thinkPHP5.1框架】
May 06 PHP
浅谈php和js中json的编码和解码
Oct 24 #PHP
php注册和登录界面的实现案例(推荐)
Oct 24 #PHP
php 使用html5实现多文件上传实例
Oct 24 #PHP
php 多文件上传的实现实例
Oct 23 #PHP
php 修改上传文件大小限制实例详解
Oct 23 #PHP
详解php中空字符串和0之间的关系
Oct 23 #PHP
PHP判断表达式中括号是否匹配的简单实例
Oct 22 #PHP
You might like
php用户注册页面利用js进行表单验证具体实例
2013/10/17 PHP
使用正则去除php代码中的注释方法
2016/11/03 PHP
php封装实现钉钉机器人报警接口的示例代码
2020/08/08 PHP
jquery miniui 教程 表格控件 合并单元格应用
2012/11/25 Javascript
Windows系统下使用Sublime搭建nodejs环境
2015/04/13 NodeJs
requirejs + vue 项目搭建详解
2017/06/16 Javascript
微信小程序checkbox组件使用详解
2018/01/31 Javascript
详解ECMAScript typeof用法
2018/07/25 Javascript
vue项目中全局引入1个.scss文件的问题解决
2019/08/01 Javascript
Python备份Mysql脚本
2008/08/11 Python
深入了解Python数据类型之列表
2016/06/24 Python
Python判断一个list中是否包含另一个list全部元素的方法分析
2018/12/24 Python
详解pandas安装若干异常及解决方案总结
2019/01/10 Python
python实现学生信息管理系统(精简版)
2020/11/27 Python
python不同版本的_new_不同点总结
2020/12/09 Python
基于HTML5 FileSystem API的使用介绍
2013/04/24 HTML / CSS
HTML5 3D书本翻页动画的实现示例
2019/08/28 HTML / CSS
几道PHP的面试题
2012/05/19 面试题
CSS代码检查工具stylelint的使用方法详解
2021/03/27 HTML / CSS
村干部培训方案
2014/05/02 职场文书
弘扬民族精神演讲稿
2014/05/07 职场文书
物业管理工作方案
2014/05/10 职场文书
卫生系统先进事迹
2014/05/13 职场文书
离职保密承诺书
2014/05/28 职场文书
2014年四风问题自我剖析材料
2014/09/15 职场文书
2014年教育实习工作总结
2014/11/22 职场文书
2014年党风廉政工作总结
2014/12/03 职场文书
2014年学校后勤工作总结
2014/12/06 职场文书
2014年结对帮扶工作总结
2014/12/17 职场文书
诚信承诺书
2015/01/19 职场文书
留学推荐信英文范文
2015/03/26 职场文书
酒店客房服务员岗位职责
2015/04/09 职场文书
2015年小学财务工作总结
2015/07/20 职场文书
MySQL 逻辑备份与恢复测试的相关总结
2021/05/14 MySQL
我国拿下天问一号火星着陆区附近 22 个地理实体命名:平乐、西柏坡、古田、漠河等
2022/04/29 数码科技
Python可视化神器pyecharts绘制水球图
2022/07/07 Python