标签:php laravel laravel-4 laravel-5 laravel-5-1
我试图了解以下函数如何在BcryptHasher.php文件中使用Laravel 4.2:
/**
* Hash the given value.
*
* @param string $value
* @param array $options
* @return string
*
* @throws \RuntimeException
*/
public function make($value, array $options = [])
{
$cost = isset($options['rounds']) ? $options['rounds'] : $this->rounds;
$hash = password_hash($value, PASSWORD_BCRYPT, ['cost' => $cost]);
if ($hash === false) {
throw new RuntimeException('Bcrypt hashing not supported.');
}
return $hash;
}
我想我理解除了这一行之外的一切:
$cost = isset($options['rounds']) ? $options['rounds'] : $this->rounds;
我知道$this-> rounds的默认值设置为10,然后是密码将被散列的“成本”.但是,我对$options数组正在做什么以及如何影响成本感到困惑?
解决方法:
您可以在调用make方法时传入选项.
例如,使用立面:
$hashed = Hash::make($value, ['rounds' => 8]);
如果你没有收到费用,它将使用$this->轮次,即10.
标签:php,laravel,laravel-4,laravel-5,laravel-5-1 来源: https://codeday.me/bug/20190528/1169402.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。