laravel的Str::random,默认长度16,先通过random_bytes返回指定剩余长度的二进制,经过base64_encode编码$bytes,用空白替换掉编码后的/、+、=字符,最后,使用substr从0开始截取当前剩余长度的字符串进行拼接,这就是Str::random的工作原理。
laravel的代码: use Illuminate\Support\Str; /** * Generate a more truly "random" alpha-numeric string. * @param int $length * @return string */ public static function random($length = 16) { $string = ''; while (($len = strlen($string)) < $length) { $size = $length - $len; ...
Laravel中的str::random()函数对于短URL是否可靠? 你应该相信Str::random()总是返回一个alpha-numeric字符串吗?对。 该函数通过编码为base 64数字来规范其输出。表示基64的64个符号是ABCDEFGHIJKLMNOPQRSTUVWXYVabcdefghijklmnopqrstuvwxyz0123456789+\和=,用于填充。 该函数还将\+=替换为空(空格),这意味着Str::rand...
5$plural = str_plural('child', 1); 6 7// childstr_random()The str_random function generates a random string of the specified length. This function uses PHP's random_bytes function:1$string = str_random(40);str_singular()The str_singular function converts a string to its singular fo...
// 在实例化Store时,传入的$id=null,则在Store构造函数中使用setId()设置$id值 //看下Store::setId()源码就知道id是随机生成的长度为40的字符串 Str::random(40) = $session->getId(); public function setId($id) { if (! $this->isValidId($id)) { $id = $this->generateSessionId(); }...
protected function create(array $data) { $salt = Str::random(6); return User::create([ 'nickname' => $data['name'], 'email' => $data['email'], 'password' => sha1($salt . $data['password']), 'register_time' => time(), 'reg/【一个开发人员,能懂服务器量好,反之一个服务器...
Lumen Version: 6.x PHP Version: 7.3.9 Description: when i use str_random() in some Model , i have error like this: Call to undefined function App\str_random()
'api_token' => str_random(60), 'remember_token' => str_random(10), ]; }); 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 然后在命令行中运行: php artisan thinker factory(‘App\User’,10)->create(); 1. 2. 这个地方的引号是英文的,csdn编辑器原因,复制出来之后是中文的,记得改成英...
$salt = Str::random(6); return User::create([ 'nickname' => $data['name'], 'email' => $data['email'], 'password' => sha1($salt . $data['password']), 'register_time' => time(), 'register_ip' => ip2long(request()->ip()), ...
'remember_token' => str_random(10),]; }); 进入tinker中批量生成用户: php artisan tinker Psy Shell v0.7.2 (PHP 5.6.25— cli) by Justin Hileman>>> factory('App\User',10)->create(); 查看数据库,是否生成了数据。 使用factory创建discussion测试数据 ...