這篇文章給大家介紹ThinkPHP的三大自動(dòng)簡(jiǎn)介詳文,內(nèi)容非常詳細(xì),感興趣的小伙伴們可以參考借鑒,希望對(duì)大家能有所幫助。

一、自動(dòng)驗(yàn)證
格式如下:
array('驗(yàn)證字段','驗(yàn)證規(guī)則','錯(cuò)誤提示','驗(yàn)證條件','附加規(guī)則','驗(yàn)證時(shí)間')參數(shù)說(shuō)明:
驗(yàn)證字段:需要驗(yàn)證表單字段名稱
驗(yàn)證規(guī)則:必須要結(jié)合附加規(guī)則一起使用
錯(cuò)誤提示:如果出現(xiàn)錯(cuò)誤,拋出一個(gè)什么樣的錯(cuò)誤提示告知用戶
驗(yàn)證條件:0、1、2
附加規(guī)則:1、regex使用正則驗(yàn)證 2、function使用函數(shù)驗(yàn)證 3、callback回調(diào) 4、confirm驗(yàn)證表單當(dāng)中兩個(gè)字段是否相同 5、驗(yàn)證是否等于某個(gè)值 6、in是否在某一個(gè)范圍內(nèi) 7、驗(yàn)證是否
TP封裝:require 字段必須驗(yàn)證;eamil 驗(yàn)證郵箱;url 驗(yàn)證url地址;currency 貨幣;number 數(shù)字;
驗(yàn)證時(shí)間:指數(shù)據(jù)庫(kù)操作時(shí)間的驗(yàn)證時(shí)機(jī),新增數(shù)據(jù)時(shí)驗(yàn)證Model::MODEL_INSERT;編輯的時(shí)候驗(yàn)證Model::MODEL_UPDATE;全部情況下驗(yàn)證Model::MODEL_BOTH;
aoli/Home/Tpl/default/User/reg.html頁(yè)面如下:
<form action="__URL__/regadd" method="post"> 用戶名:<input type="text" name="username" /><br /> 密碼:<input type="password" name="password" /><br /> 重復(fù)密碼:<input type="password" name="repassword" /><br /> 注冊(cè)時(shí)間:<input type="text" name="createtime" /><br /> 注冊(cè)IP:<input type="text" name="createip" /><br /> <input type="submit" value="注冊(cè)" /> </form>
aoli/Home/Lib/Model/UserModel.class.php頁(yè)面如下:
<?php
class UserModel extends Model{//對(duì)應(yīng)數(shù)據(jù)庫(kù)中的表user
protected $_validate=array(
array('username','require','用戶名必填'),
array('username','checklen','用戶名長(zhǎng)度過(guò)長(zhǎng)或過(guò)短',0,'callback'),
array('password','require','密碼必填'),
array('repassword','require','重復(fù)密碼必填'),
array('password','repassword','兩次密碼不一致',0,'confirm'),
array('createtime','number','您輸入的不是數(shù)字'),
array('createip','email','郵箱格式不正確'),
);
function checklen($data){
if(strlen($data)>15 || strlen($data)<5){
return false;
}else{
return true;
}
}
}
?>aoli/Home/Lib/Action/UserAction.class.php頁(yè)面如下:
<?php
class UserAction extends Action {
function reg(){
$this->display();
}
function regadd(){
$user=D('user');
if($user->create()){
if($user->add()){
$this->success('注冊(cè)成功');
}else{
$this->error('注冊(cè)失敗');
}
}else{
$this->error($user->getError());
}
}
}
?>二、自動(dòng)完成(自動(dòng)填充)
自動(dòng)完成也是ThinkPHP當(dāng)中的一個(gè)成員方法,在create的時(shí)候,自動(dòng)執(zhí)行
規(guī)則如下:
array('填充字段','填充內(nèi)容','填充條件','附加規(guī)則');簡(jiǎn)單示例如下:
protected $_auto = array (
//array( 'status','1'), // 新增的時(shí)候把 status 字段設(shè)置為 1
array('password','md5',1,'function') , // 對(duì) password 字段在新增的時(shí)候使 md5 函數(shù)處理
array('createtime','time',3,'function' ), // 對(duì) create_time 字段在更新的時(shí)候?qū)懭氘?dāng)前時(shí)間戳
);三、自動(dòng)映射(字段映射)
自動(dòng)映射:將數(shù)據(jù)庫(kù)的字段映射成別名,在表單中就可以使用別名了。
簡(jiǎn)單示例如下:
protected $_map = array( 'name' => 'username', 'pass' => 'password', );
關(guān)于ThinkPHP的三大自動(dòng)簡(jiǎn)介詳文就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,可以學(xué)到更多知識(shí)。如果覺(jué)得文章不錯(cuò),可以把它分享出去讓更多的人看到。
新聞標(biāo)題:ThinkPHP的三大自動(dòng)簡(jiǎn)介詳文-創(chuàng)新互聯(lián)
網(wǎng)址分享:http://chinadenli.net/article4/geoie.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供Google、ChatGPT、軟件開(kāi)發(fā)、營(yíng)銷(xiāo)型網(wǎng)站建設(shè)、靜態(tài)網(wǎng)站、品牌網(wǎng)站制作
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容
移動(dòng)網(wǎng)站建設(shè)知識(shí)