《PHP實戰(zhàn):使用PHP免費發(fā)送定時短信的實例》要點:
本文介紹了PHP實戰(zhàn):使用PHP免費發(fā)送定時短信的實例,希望對您有用。如果有疑問,可以聯(lián)系我們。
由于飛信目前沒有開發(fā)平臺,現(xiàn)有API都是第三方開發(fā),貌似是通過破解WAP飛信或者3G飛信,模擬瀏覽器的行為來發(fā)短信.另外Google code上有開源的php飛信發(fā)送類php-fetion.這些飛信接口方便了定時短信的開發(fā).
PHP教程
背景:老媽年紀(jì)大了,文化程度不高,但是需要每天了解天氣信息才能下地工作,也就無法通過網(wǎng)絡(luò)獲取天氣,只能通過電視.于是尋思著自己抓取網(wǎng)絡(luò)上的天氣信息,通過手機短信發(fā)送給老媽.PHP教程
問題:自己不可能每天定時給老媽發(fā)送天氣短信,現(xiàn)有的天氣預(yù)報訂閱短信又是要錢的.PHP教程
解決:PHP教程
免費發(fā)送短信到手機PHP教程
方案1:使用飛信APIPHP教程
由于飛信目前沒有開發(fā)平臺,現(xiàn)有API都是第三方開發(fā),貌似是通過破解WAP飛信或者3G飛信,模擬瀏覽器的行為來發(fā)短信.另外Google code上有開源的php飛信發(fā)送類php-fetion(http://code.google.com/p/php-fetion/).這些飛信接口方便了定時短信的開發(fā).PHP教程
唯一的缺點就是第三方的API不穩(wěn)定,也有飛信賬號泄露的風(fēng)險.PHP教程
此處,我使用http://3.ibtf.sinaapp.com/提供的飛信API進(jìn)行短信發(fā)送.PHP教程
該API只需提供發(fā)送者手機號,密碼,接受者手機號,消息內(nèi)容作為url參數(shù)即可.唯一需要注意的是中文的亂碼問題(使用gbk而不是utf-8編碼,直接輸入中文亂碼,輸入中文的gbk編碼手機接收正常),可以使用iconv函數(shù)或者加上參數(shù)”&u=1”解決.PHP教程
方案2:使用139郵箱的短信提醒功能PHP教程
139郵箱也是中國移動的一項業(yè)務(wù),提供了郵件短信提醒的功能.只要在郵箱里面設(shè)置郵件到達(dá)通知就OK了,除了彩信,其他的長短信,普通短信,免提短信都是免費的.注意,時間久了,發(fā)件箱和收件箱都要清除一下,以免占用過多空間而影響正常使用.PHP教程
另外,只需要編寫一個簡單的郵件發(fā)送的php腳本.而新浪SAE也提供了此Mail服務(wù).使用Mail服務(wù)里的函數(shù),可以快速發(fā)送郵件,代碼如下:
PHP教程
<?php $mail = new SaeMail(); $ret = $mail->quickSend( '收件人@139.com' , '這是主題' , '這是正文' , '這是發(fā)件人郵箱' , '這是發(fā)件人密碼' , '這是smtp服務(wù)host' , [這是smpt服務(wù)端口] ); //發(fā)送失敗時輸出錯誤碼和錯誤信息 if ($ret === false) var_dump($mail->errno(),$mail->errmsg()); ?>
效果如下:PHP教程
PHP教程
短信成功發(fā)送后,就需要定時了.還好新浪SAE提供了Cron服務(wù).Cron服務(wù)是SAE為開發(fā)者提供的分布式定時服務(wù),用來定時觸發(fā)開發(fā)者的特定動作,滿足比如定時計算排行榜等需求.Cron的設(shè)置是通過App的config.yaml來實現(xiàn)的,只要用戶在App目錄下的config.yaml里按照我們的提供的語法格式進(jìn)行配置,部署后就能生效.
PHP教程
增加Cron
PHP教程
編輯saetest/1/config.yaml,增加cron段,config.yaml示例如下:?
PHP教程
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
PHP教程
上面的示例描述了兩個定時任務(wù):每年10月2日19點執(zhí)行mycron/test.php;每隔10分鐘執(zhí)行mycron/another_test.php
PHP教程
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持維易PHP.PHP教程
轉(zhuǎn)載請注明本頁網(wǎng)址:
http://www.snjht.com/jiaocheng/2959.html