ThinkPHP3.1新特性之對Ajax的支持更加完善
ThinkPHP3.1版對AJAX的支持更加完善了,具體表現(xiàn)在:
1.判斷AJAX方式改進(jìn)
現(xiàn)在可以直接使用常量IS_AJAX來判斷是否AJAX方式請求,用來取代之前的Action類的isAjax方法,優(yōu)勢是可以在任何代碼里面進(jìn)行判斷。而Action類的error和success方法內(nèi)置就支持對AJAX自動判斷支持。
2.ajaxReturn方法完善
原來的ajaxReturn方法只能返回固定結(jié)構(gòu)的數(shù)據(jù),包括data、status和info索引信息,如果需要擴(kuò)展額外的返回?cái)?shù)據(jù)信息,只能通過ajaxAssign方法,而ThinkPHP3.1版本則改進(jìn)了ajaxReturn方法本身,可以更好的支持ajax數(shù)據(jù)擴(kuò)展,例如:
$data['status'] = 1; $data['info'] = '返回信息'; $data['data'] = '返回?cái)?shù)據(jù)'; $data['url'] = 'URL地址'; $this->ajaxReturn($data);
data傳值數(shù)組可以隨意定義。
改進(jìn)后的ajaxReturn方法也兼容之前的寫法,例如:
$this->ajaxReturn($data,'info',1);
系統(tǒng)會自動把info和1兩個參數(shù)并入$data數(shù)組中,等同于賦值
$data['info'] = 'info'; $data['status'] = 1; $data['data'] = $data; $this->ajaxReturn($data);
但這種用法不再建議使用了。
3.success和error方法完善對ajax支持
如果是ajax方式下面,Action類的success和error方法都做了改進(jìn)支持,這兩個方法的參數(shù)會轉(zhuǎn)換成ajaxReturn方法的data數(shù)據(jù)的info、status和url參數(shù)。還可以支持傳入其他的參數(shù),有兩種方式支持ajax傳值。以success方法為例,第一種方式是直接傳入ajax數(shù)據(jù)
$data['code'] = 200;
$data['name'] = 'ThinkPHP';
$this->success('成功提示信息','跳轉(zhuǎn)地址',$data);
或者采用
$this->assign('code',200);
$this->assign('name','thinkphp');
$this->success('成功提示信息','跳轉(zhuǎn)地址');
最終返回給客戶端的ajax數(shù)據(jù)信息是一個數(shù)組,包括name、code、info、status和url。
- ThinkPHP中ajax使用實(shí)例教程
- ThinkPHP中使用ajax接收json數(shù)據(jù)的方法
- ThinkPHP實(shí)現(xiàn)ajax仿官網(wǎng)搜索功能實(shí)例
- thinkphp中ajax與php響應(yīng)過程詳解
- ThinkPHP處理Ajax返回的方法
- ThinkPHP結(jié)合ajax、Mysql實(shí)現(xiàn)的客戶端通信功能代碼示例
- jquery ajax結(jié)合thinkphp的getjson實(shí)現(xiàn)跨域的方法
- thinkphp中AJAX返回ajaxReturn()方法分析
- thinkPHP統(tǒng)計(jì)排行與分頁顯示功能示例
- thinkphp區(qū)間查詢、統(tǒng)計(jì)查詢與SQL直接查詢實(shí)例分析
- thinkphp瀏覽歷史功能實(shí)現(xiàn)方法
- thinkPHP+ajax實(shí)現(xiàn)統(tǒng)計(jì)頁面pv瀏覽量的方法
相關(guān)文章
workerman結(jié)合laravel開發(fā)在線聊天應(yīng)用的示例代碼
聊天功能是很常見的一種功能,Workerman是一款開源高性能異步PHP socket即時(shí)通訊框架。這篇文章主要介紹了workerman結(jié)合laravel開發(fā)在線聊天應(yīng)用,感興趣的小伙伴們可以參考一下2018-10-10
CodeIgniter錯誤mysql_connect(): No such file or directory解決方法
這篇文章主要介紹了CodeIgniter錯誤mysql_connect(): No such file or directory解決方法,需要的朋友可以參考下2014-09-09
php array_pop 刪除數(shù)組最后一個元素實(shí)例
這篇文章主要介紹了php array_pop 刪除數(shù)組最后一個元素實(shí)例的相關(guān)資料,需要的朋友可以參考下2016-11-11
php把數(shù)據(jù)表導(dǎo)出為Excel表的最簡單、最快的方法(不用插件)
很多時(shí)候,數(shù)據(jù)庫中的數(shù)據(jù)需要導(dǎo)出成excel,以下是最簡便的方法,不用導(dǎo)出excel的類,即使功能簡單,但是對于沒有復(fù)雜需求的項(xiàng)目“見效快”2014-05-05
詳解在YII2框架中使用UEditor編輯器發(fā)布文章
這篇文章主要介紹了在YII2框架中使用UEditor編輯器發(fā)布文章,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2018-11-11
Laravel訪問出錯提示:`Warning: require(/vendor/autoload.php): faile
這篇文章主要介紹了Laravel訪問出錯提示:`Warning: require(/vendor/autoload.php): failed to open stream: No such file or di解決方法,涉及Laravel框架相關(guān)配置與安裝操作技巧,需要的朋友可以參考下2019-04-04
ThinkPHP的SAE開發(fā)相關(guān)注意事項(xiàng)詳解
這篇文章主要介紹了ThinkPHP的SAE開發(fā)相關(guān)注意事項(xiàng),結(jié)合實(shí)例形式較為詳細(xì)的分析了thinkPHP針對SAE開發(fā)的相關(guān)數(shù)據(jù)庫、緩存、文件、圖片、日志等操作注意事項(xiàng),具有一定參考借鑒價(jià)值,需要的朋友可以參考下2016-10-10
淺談php函數(shù)serialize()與unserialize()的使用方法
在php中serialize()與unserialize()函數(shù)是一對函數(shù),下面本文章就來為各位同學(xué)介紹serialize()與unserialize()函數(shù)的使用例子,希望能幫助到各位。2014-08-08
在IIS7.0下面配置PHP 5.3.2運(yùn)行環(huán)境的方法
最近心血來潮,想學(xué)習(xí)一下php,既然想學(xué)習(xí)了就得需要搭環(huán)境。在網(wǎng)上找來找去都是說IIS5.0或者6.0的配置。真是看得云里霧里的,這樣直接影響了我的判斷力?,F(xiàn)特意寫下來在IIS7.0下面如何進(jìn)行配置PHP。2010-04-04

