就是做個記錄,thinkphp 的手冊以及教程很多,還有我用的是 thinkphp 3.2.3 的版本,別的版本我不知道
在做注冊頁的時候要發送短信,所以我借助了一個第三方的平台-- 一拓雲通訊。(注冊就送100條免費短信,客服也很脾氣也不錯,我是來打廣告的,畢竟免費蹭了人家100條短信還幾次麻煩客服人員。。。。。。)
下載下來的文件如下:
在 lib 里面有 Ecd.class.php,index.php 是使用模版
header("Content-type: text/html; charset=utf-8"); //這個不是重點,去掉也沒關系,至少我沒加還是成功的
//載入ecd類
require_once('lib/Ecd.class.php');
//接口生產地址(應用上線后正式環境必須使用該地址)
//const url = "http://www.etuocloud.com/gateway.action";
//接口測試地址(未上線前測試環境使用)
const url = "http://www.etuocloud.com/gatetest.action";
const app_key = '應用的app_key';
const app_secret = '應用的app_secret';
const format = 'xml';
//初始化
$ecd = new Ecd(url,app_key,app_secret,format);
//發送驗證碼短信
//echo $ecd->send_sms_code('接收驗證碼的手機號','驗證碼短信模板ID','驗證碼','商戶訂單號,可空');
//發送模板短信
//echo $ecd->send_sms_tpl('接收模板短信的手機號','模板短信模板ID','模板中的參數,以英文逗號分隔','商戶訂單號,可空');
//發送自定義短信
//echo $ecd->send_sms_custom('接收自定義短信的手機號','自定義短信內容','商戶訂單號,可空');
//發送語音驗證碼
//echo $ecd->send_voice_code('接收驗證碼語音的手機號','語音驗證碼模板ID','驗證碼','商戶訂單號,可空');
//發送語音通知
//echo $ecd->send_voice_notice('接收語音通知的手機號','語音通知模板ID','商戶訂單號,可空');
//獲取流量產品列表
//echo $ecd->get_flow_product_list();
//流量充值
//echo $ecd->recharge_flow('被充值流量的手機號','流量產品編碼','商戶訂單號,可空');
app_key,app_secret都可以從控制台看到,而且上面的重點就是如何把 Ecd.class.php 導入到工程中
下面開始講重點了,如何把這個第三方類庫導入到工程中並且實現調用
首先這個文件需要放在這里
ThinkPHP 下的 Library 下的 Org 下新建一個文件,文件名隨意,但是最好還是跟你的庫文件名一致,之后再在 Ecd.class.php 中進行修改
在 Ecd.class.php 中添加這么一句話:
namespace Org\Ecd;之后只要在你需要實例化這個類的文件中這么調用就行了:
use Org\Ecd\Ecd;
/**
*這里面還要傳入一定的參數,這個暫時不重要
*$ecd=new Ecd();
*/重點就在於三點:
第一,第三類庫放在哪里,Library \ Org \ 類名文件夾 下
第二,在這個 php 文件中一定要加 namespace Org \ 類名
第三,在引用的時候要不直接寫全名:
$ecd= new \ Org \ Ecd \ Ecd ( )
要不就使用 use
use Org\Ecd\Ecd;
// $ecd=new Ecd();