首頁 > php框架 > YII > yii2框架怎麼實現註冊

yii2框架怎麼實現註冊

發布: 2020-01-11 15:30:07
原創
1983 人瀏覽過

yii2框架怎麼實現註冊

yii2框架實作註冊:

在advanced範本中,進入frontend/index.php?r=site/signup頁面,可以看到框架的註冊頁面

填寫完Username、Email和Password後點擊Signup後,如果格式不對,frontend/models/SignuForm中的rules()函數會進行初步驗證,所有格式正確後,資料傳輸到frontend/controllers /SiteController中的actionSignup()函數中,函數載入使用者輸入的註冊信息,在frontend/models/SignupForm中的signup()函數。

以下引用的文字為解釋函數中的具體細節,不閱讀不影響整體,因為沒有折疊文字功能,故採用引用的方法,下同

if (!$this->validate()) {
  return null;
}
登入後複製

signup() 函數首先呼叫yii2/base/Model中的validate() 函數進行驗證

第一步,清除使用frontend/models/SignuForm中的rules()函數在使用者輸入時的錯誤訊息

if ($clearErrors) {
  $this->clearErrors();
}
登入後複製

第二步,beforeValidate()函數觸發beforeValidate事件並回傳true

第三步,設定scenario,預設是default

第四步,因為這裡的$attributeNames為null,

$attributeNames = $this->activeAttributes();
登入後複製

執行後返回

array(3) { [0]=> string(8) "username" [1]=> string(5) "email" [2]=> string(8) >"password" }
登入後複製

第五步,$this->getActiveValidators()會得到frontend/models/SignuForm中的rules()中11條驗證規則給validateAttributes()進行驗證

第六步,執行afterValidate()函數觸發afterValidate事件

最後如果所有驗證都通過,$this->hasErrors()為false,所以函數最後回傳true

推薦學習:Yii入門教學

以上是yii2框架怎麼實現註冊的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板