Рандомная строка в Laravel

Если необходимо получить произвольную строку, в фреймворке Laravel есть необходимые инструменты для этого.

Метод random()

Статический метод random() класса Illuminate\Support\Str сгенеририровать строку необходимой длины. По умолчанию будет создана строка, длиной 16 символов.

Сигнантура метода

/**
* Создает случайную буквенно-числовую строку
*
* @param  int  $length
* @return string
*/
public static function random($length = 16)
{
    $string = '';

    while (($len = strlen($string)) < $length) {
        $size = $length - $len;

        $bytes = random_bytes($size);

        $string .= substr(str_replace(['/', '+', '='], '', base64_encode($bytes)), 0, $size);
    }

    return $string;
}

Как видно из скриншота, из строки будут исключены символы /, + и =

Примеры использования

use Illuminate\Support\Str;

Str::random(); //cNtw4g60cZsJhPMm

Str::random(10); //nYQ9UkxTxN

Str::random(); //o5tchJypqVRYqsCx

Str::random(3); //wgg

Str::random(30); //MES2Ei27zC3RoMcPK5vTtbCiiUkMDS

Anatolii Koziura

Антураж-куражмонтаж в мире web разработки.

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *