當前位置: 首頁>>代碼示例>>PHP>>正文


PHP PasswordHash::comparePassword方法代碼示例

本文整理匯總了PHP中PasswordHash::comparePassword方法的典型用法代碼示例。如果您正苦於以下問題:PHP PasswordHash::comparePassword方法的具體用法?PHP PasswordHash::comparePassword怎麽用?PHP PasswordHash::comparePassword使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在PasswordHash的用法示例。


在下文中一共展示了PasswordHash::comparePassword方法的3個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。

示例1: login

 public function login($sUsername, $sPassword)
 {
     $oUser = UserQuery::create()->filterByUsername($sUsername)->findOne();
     if ($oUser === null) {
         $oUser = UserQuery::create()->filterByEmail($sUsername)->find();
         if (count($oUser) === 1) {
             $oUser = $oUser[0];
         } else {
             return 0;
         }
     }
     if (!PasswordHash::comparePassword($sPassword, $oUser->getPassword())) {
         if (PasswordHash::comparePasswordFallback($sPassword, $oUser->getPassword())) {
             $oUser->setPassword($sPassword);
             UserPeer::ignoreRights(true);
             $oUser->save();
             return $this->login($sUsername, $sPassword);
         }
         if ($oUser->getPassword() === '*') {
             return self::USER_NEEDS_PASSWORD_RESET;
         }
         return 0;
     }
     if ($oUser->getDigestHA1() === null && Settings::getSetting('security', 'generate_digest_secrets', false) === true) {
         $oUser->setPassword($sPassword);
         UserPeer::ignoreRights(true);
         $oUser->save();
     }
     return $this->loginUser($oUser);
 }
開發者ID:rapila,項目名稱:cms-base,代碼行數:30,代碼來源:Session.php

示例2: validate

 private function validate($aUserData, $oUser)
 {
     $oFlash = Flash::getFlash();
     $oFlash->setArrayToCheck($aUserData);
     $oFlash->checkForValue('username', 'username_required');
     $oFlash->checkForValue('first_name', 'first_name_required');
     $oFlash->checkForValue('last_name', 'last_name_required');
     $oFlash->checkForEmail('email', 'valid_email');
     if ($oUser->isNew() || $aUserData['username'] !== $oUser->getUsername()) {
         $oCheckedUser = UserQuery::create()->filterByUsername($aUserData['username'])->findOne();
         if ($oCheckedUser !== null && $oCheckedUser->getId() !== $oUser->getId()) {
             $oFlash->addMessage('username_exists');
         }
     }
     if ($aUserData['force_password_reset']) {
         // Nothing to validate, pass
     } else {
         if ($aUserData['password'] !== '') {
             if ($oUser->isSessionUser() && $oUser->getPassword() != null) {
                 if ($aUserData['old_password'] == '') {
                     $oFlash->addMessage('old_password_required');
                 } else {
                     if (!PasswordHash::comparePassword($aUserData['old_password'], $oUser->getPassword())) {
                         $oFlash->addMessage('old_password_invalid');
                     }
                 }
             }
             if ($aUserData['password'] !== $aUserData['password_confirm']) {
                 $oFlash->addMessage('password_confirm');
             }
             PasswordHash::checkPasswordValidity($aUserData['password'], $oFlash);
         } else {
             if ($oUser->isNew()) {
                 $oFlash->addMessage('password_new');
             }
         }
     }
     $oFlash->finishReporting();
 }
開發者ID:rapila,項目名稱:cms-base,代碼行數:39,代碼來源:UserDetailWidgetModule.php

示例3: testGeneratedPasswordEncryption

 public function testGeneratedPasswordEncryption()
 {
     $sPassword = PasswordHash::generatePassword();
     $sHash = PasswordHash::hashPassword($sPassword);
     $this->assertSame(true, PasswordHash::comparePassword($sPassword, $sHash));
 }
開發者ID:rapila,項目名稱:cms-base,代碼行數:6,代碼來源:PasswordHashTests.php


注:本文中的PasswordHash::comparePassword方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。