一区二区久久-一区二区三区www-一区二区三区久久-一区二区三区久久精品-麻豆国产一区二区在线观看-麻豆国产视频

ThinkPHP3.1.3版本新特性概述

Thinkphp3.1.3版本有一些特性,還是值得關(guān)注的,下面來(lái)簡(jiǎn)單說(shuō)下。

1、異常方面的改進(jìn)

新版的Thinkphp3.1.3重寫了異常類ThinkException(其實(shí)是完全簡(jiǎn)化成了直接繼承系統(tǒng)Exception類),并且把異常邏輯改進(jìn)封裝到Think類中。主要涉及到Think類的appException方法和halt函數(shù)。
并且改進(jìn)后的異常處理支持系統(tǒng)致命錯(cuò)誤的捕獲,Think類增加了fatalError方法,原理是使用了

register_shutdown_function(array('Think','fatalError'));

因此可以使得系統(tǒng)致命錯(cuò)誤通過(guò)統(tǒng)一的異常模板界面友好提示。

2、對(duì)PDO參數(shù)綁定的支持

因?yàn)門hinkphp3.*版本采用的是混合數(shù)據(jù)庫(kù)驅(qū)動(dòng),同時(shí)也支持PDO方式,但之前版本并未針對(duì)PDO做優(yōu)化,只是簡(jiǎn)單的封裝。3.1.3版本完善了對(duì)PDO以及Sqlarv的支持,因?yàn)镻DO和sqlsrv都支持參數(shù)綁定操作(注意,不支持參數(shù)綁定的數(shù)據(jù)庫(kù)和驅(qū)動(dòng)無(wú)法使用參數(shù)綁定功能)。

系統(tǒng)對(duì)參數(shù)綁定操作的支持分兩種:自動(dòng)綁定和手動(dòng)綁定

自動(dòng)綁定是對(duì)于寫入操作(這里包括數(shù)據(jù)的新增和更新),框架會(huì)自動(dòng)把相關(guān)數(shù)據(jù)轉(zhuǎn)換成參數(shù)綁定方式執(zhí)行,這個(gè)部分不需要額外處理,因?yàn)閟qlsrv只有采用參數(shù)綁定的方式傳值才能支持UTF8數(shù)據(jù)寫入,但是每次寫入數(shù)據(jù)都要采用手動(dòng)參數(shù)綁定的話,就會(huì)顯得比較麻煩。為了避免和手動(dòng)參數(shù)綁定沖突,自動(dòng)參數(shù)綁定采用的是對(duì)字段名md5編碼的方式。

手動(dòng)綁定,通常用于查詢條件之類的,并且采用bind連貫操作方法,例如:

$model->where(array('id'=>':id','name'=>':name'))->bind(array(':id'=>$id,':name'=>$name))->select();


3、增加變量安全獲取方法

之前版本通過(guò)Action類的_post _get等方法來(lái)安全獲取變量,雖然沒(méi)問(wèn)題,但局限是只能在控制器中獲取變量,新版把這一功能獨(dú)立成一個(gè)快捷方法I,可以用于任何地方。
使用方法如下:

I('get.id',0); // 獲取$_GET['id'] 如果不存在則默認(rèn)為0I('post.name','','htmlspecialchars'); // 獲取$_POST['name'] 采用htmlspecialchars方法過(guò)濾I('id'); // 獲取id參數(shù) 自動(dòng)判斷get或者postI('param.id'); // 獲取id參數(shù) 自動(dòng)判斷get或者post 和上面用法等效I('put.id'); // 獲取put請(qǐng)求的id參數(shù)

還支持獲取整個(gè)數(shù)組,例如:

I('get.'); // 獲取$_GET數(shù)組I('post.'); // 獲取$_POST數(shù)組

在使用I方法的情況下,系統(tǒng)的VAR_FILTERS和DEFAULT_FILTER過(guò)濾配置依然有效。

4、where方法的多次調(diào)用

模型類的where方法可以支持?jǐn)?shù)組方式的多次調(diào)用,例如:

$model->where(array('a'=>1,'c'=>2))->where(array('a'=>3,'b'=>1))->select();

多個(gè)where條件的時(shí)候,后面的條件會(huì)合并到前面的條件,最終的條件等效于:

$model->where(array('a'=>3,'b'=>1,'c'=>2))->select();


5、控制器中的assign方法支持連貫操作

我們可以在控制器使用:

$this->assign('name',$name)->assign('email',$email)->display();

或者:

$this->assign(array('name'=>$name,'email'=>$email))->display();

php技術(shù)ThinkPHP3.1.3版本新特性概述,轉(zhuǎn)載需保留來(lái)源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 亚洲国产日产无码精品 | 久久精品亚洲牛牛影视 | 国产一区在线观看视频 | 在线看91 | 伊人任线任你躁 | 看全色黄大色大片 | 中文字幕日韩精品中文区 | 一本色道久久综合亚洲精品 | 久久精品免费全国观看国产 | 国产午夜三区视频在线 | 精品国产一区二区三区2021 | 久青草国产在线视频亚瑟影视 | 69国产成人综合久久精 | 98bb国产精品视频 | 色老板亚洲 | 在线视频午夜 | 国产精品亚洲一区二区三区正片 | 中国精品视频一区二区三区 | 亚洲国产综合精品中文字幕 | 一二三四视频社区在线中文 | 婷婷三级| 久久久久国产精品美女毛片 | 日本高清色视频在线观看免费 | 国产一区二区在线免费观看 | 一区二区三区四区视频在线 | 欧美一级特黄特黄做受 | 黄址在线观看 | 六月婷婷在线视频 | 亚洲欧美日韩在线2020 | 成人国产精品视频频 | 99久久精品国产麻豆 | 乱子伦免费视频中文字幕 | 在线播放一区二区三区 | 国产成人亚洲欧美激情 | 亚洲综合在线成人一区 | 福利毛片 | 久久九九久精品国产 | 久久99国产乱子伦精品免费 | 精品视频久久久 | 一区二区三区亚洲视频 | 亚洲国产精品婷婷久久久久 |