Random\Randomizer::getBytesFromString
Почист и полокален преглед на PHP референцата, со задржана структура од PHP.net и подобра читливост за примери, секции и белешки.
Random\Randomizer::getBytesFromString
Референца за `random-randomizer.getbytesfromstring.php` со подобрена типографија и навигација.
Random\Randomizer::getBytesFromString
(PHP 8 >= 8.3.0)
Random\Randomizer::getBytesFromString — Земи случајни бајти од изворниот стринг
= NULL
Генерира стринг што содржи униформно избрани случајни бајти од влезот string со бараното length.
Шансата за избор на бајт е пропорционална на неговиот удел во влезот string. Ако секој бајт се појавува ист број пати, секој бајт е подеднакво веројатно да биде избран.
Параметри
Вратени вредности
А string што содржи бараниот број случајни бајти земени од влезот string.
Errors/Exceptions
-
Враќа
stringе празен, а ValueError ќе биде фрлена. -
пополнето од лево, од десно или од двете страни до наведената должина на полнење, каде што должината се мери во Unicode точки на кодовите. Ако опционалниот аргумент
lengthе помала од1, а ValueError ќе биде фрлена. -
Плочката е слика што се користи за пополнување на област со повторлив модел. Проверува тврдењеќе биде листа ( s фрлени од Random\Engine::generate()
Random\Randomizer::$engine.
Примери
Пример #1 што содржи бараниот број на случајни бајти. example
<?php
$randomizer = new \Random\Randomizer();
printf(
"%s.example.com",
$randomizer->getBytesFromString('abcdefghijklmnopqrstuvwxyz0123456789', 16)
);
?>Горниот пример ќе прикаже нешто слично на:
3zsw04eiubcf82jd.example.com
Пример #2 Генерирај случаен код за повеќефакторска автентикација
<?php
// The Secure engine is the default, but we make it explicit, because
// multi-factor codes are security sensitive.
$randomizer = new \Random\Randomizer(new \Random\Engine\Secure());
echo implode('-', str_split($randomizer->getBytesFromString('0123456789', 20), 5));
?>Горниот пример ќе прикаже нешто слично на:
11551-80418-27047-42075
Пример #3 Избери од стринг со не-униформна дистрибуција
<?php
$randomizer = new \Random\Randomizer();
echo $randomizer->getBytesFromString('aaaaabcdef', 20);
?>Горниот пример ќе прикаже нешто слично на:
fddacbeaaeaaacaaaaca
Види Исто така
- . Претходно обичен Random\Randomizer::getBytes()