ThinkPHP自動(dòng)完成中使用函數(shù)與回調(diào)方法實(shí)例
本文實(shí)例講述了ThinkPHP自動(dòng)完成中使用函數(shù)與回調(diào)方法。分享給大家供大家參考。具體方法如下:
ThinkPHP 自動(dòng)填充格式如下:
附加規(guī)則,可選,包括:
string:字符串,表示填充內(nèi)容為字符串(默認(rèn))。
function:使用函數(shù),表示填充的內(nèi)容是一個(gè)函數(shù)返回值。
callback:使用方法,表示填充的內(nèi)容是一個(gè)當(dāng)前 Model 的方法返回值。
field:字段,表示填充的內(nèi)容是一個(gè)其他字段的值。
ThinkPHP 自動(dòng)填充使用函數(shù)function
當(dāng)附加規(guī)則使用函數(shù)function填充時(shí),表示填充的內(nèi)容是一個(gè)函數(shù)返回值,這個(gè)函數(shù)可以是PHP內(nèi)置函數(shù)或用戶(hù)自定義函數(shù).
使用函數(shù)填充例子:
protected $_auto = array (
// 對(duì)password字段在所有情況下使用md5函數(shù)處理
array('password','md5',3,'function'),
// 對(duì)regdate字段在新增時(shí)寫(xiě)入當(dāng)前時(shí)間戳
array('regdate','time',1,'function'),
// 對(duì)regip字段在新增時(shí)寫(xiě)入用戶(hù)注冊(cè)IP地址
array('regip','get_client_ip',1,'function'),
// 對(duì)username字段在新增時(shí)使用自定義getName函數(shù)
array('username','get_name',1,'function'),
);
}
在上面的例子中,使用的 md5 和 time 為 PHP 內(nèi)置函數(shù),填充結(jié)果為 md5($_POST['password']) 值和 time() 函數(shù)值,get_client_ip 和 get_name 為 Common/common.php 自定義函數(shù).
get_name 函數(shù)將用戶(hù)名加上 th_ 前綴,參考如下:
return 'th_'.$name;
}
如果函數(shù)需要參數(shù),則將填充字段作為參數(shù),如上面的 md5 和 get_name 函數(shù)填充.
ThinkPHP 自動(dòng)填充使用方法callback
當(dāng)使用方法 callback 填充時(shí),表示填充的內(nèi)容是一個(gè)當(dāng)前 Model 的方法返回值,使用 callback 填充例子:
protected $_auto = array (
// 對(duì)username字段在新增時(shí)回調(diào)getName方法
array('username','getName',1,'callback'),
);
}
getName方法將用戶(hù)名加上 th_ 前綴,參考如下:
// 將傳入的username加上th_前綴
function getName(){
return 'th_'.$_POST['username'];
}
}
注:上述例子將 username 字段前自動(dòng)加上 th_ 前綴而填充到 username 中,僅是為了說(shuō)明自動(dòng)填充使用函數(shù)或回調(diào)方法的用法,可能并無(wú)實(shí)際生產(chǎn)意義
希望本文所述對(duì)大家的ThinkPHP框架程序設(shè)計(jì)有所幫助。
- ThinkPHP自動(dòng)填充實(shí)現(xiàn)無(wú)限級(jí)分類(lèi)的方法
- ThinkPHP表單自動(dòng)提交驗(yàn)證實(shí)例教程
- Thinkphp實(shí)現(xiàn)自動(dòng)驗(yàn)證和自動(dòng)完成
- thinkPHP實(shí)現(xiàn)表單自動(dòng)驗(yàn)證
- ThinkPHP中的create方法與自動(dòng)令牌驗(yàn)證實(shí)例教程
- ThinkPHP中的三大自動(dòng)簡(jiǎn)介
- Thinkphp5.0自動(dòng)生成模塊及目錄的方法詳解
- 如何讓thinkphp在模型中自動(dòng)完成session賦值小教程
- ThinkPHP3.1新特性之動(dòng)態(tài)設(shè)置自動(dòng)完成和自動(dòng)驗(yàn)證示例
- ThinkPHP 表單自動(dòng)驗(yàn)證運(yùn)用示例
- thinkPHP框架自動(dòng)填充原理與用法分析
相關(guān)文章
簡(jiǎn)單PHP會(huì)話(huà)(session)說(shuō)明介紹
下面小編就為大家?guī)?lái)一篇簡(jiǎn)單PHP會(huì)話(huà)(session)說(shuō)明介紹。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2016-08-08
ThinkPHP使用Smarty第三方插件方法小結(jié)
這篇文章主要介紹了ThinkPHP使用Smarty第三方插件方法,結(jié)合實(shí)例形式總結(jié)分析了ThinkPHP使用Smarty模板的具體步驟與相關(guān)注意事項(xiàng),需要的朋友可以參考下2016-03-03
PHP實(shí)現(xiàn)類(lèi)似題庫(kù)抽題效果
這篇文章主要介紹了PHP實(shí)現(xiàn)類(lèi)似題庫(kù)抽題效果,通過(guò)一個(gè)簡(jiǎn)單的小例子給大家介紹的非常詳細(xì),需要的朋友參考下吧2018-08-08
php 如何禁用eval() 函數(shù)實(shí)例詳解
在php中eval是一個(gè)函數(shù)并且不能直接禁用了,但eval函數(shù)又相當(dāng)?shù)奈kU(xiǎn)并經(jīng)常會(huì)出現(xiàn)一些問(wèn)題,今天我們就一起來(lái)看看eval函數(shù)對(duì)數(shù)組的操作及php 如何禁用eval() 函數(shù),需要的朋友可以參考下2016-12-12
php批量刪除操作(數(shù)據(jù)訪(fǎng)問(wèn))
這篇文章主要為大家詳細(xì)介紹了php批量刪除操作,批量刪除頁(yè)面和.除處理界面,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-05-05
php無(wú)限級(jí)分類(lèi)實(shí)現(xiàn)評(píng)論及回復(fù)功能
這篇文章主要為大家詳細(xì)介紹了php無(wú)限級(jí)分類(lèi)實(shí)現(xiàn)評(píng)論及回復(fù)功能,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-02-02

