(PHP 8 >= 8.2.0)
Random\Randomizer::pickArrayKeys — Выбирает случайные ключи массива
   Равномерно выбирает num отдельных ключей массива входного массива array.
  
   Каждый ключ входного массива array с равной вероятностью будет возвращён.
  
    Выбор ключей массива зависит от внутренней структуры входного массива array.
    Ключи возвращаемого массива могут быть разными для двух одинаковых входных массивов
    и двух объектов Random\Engine с одинаковым состоянием,
    в зависимости от того, как были созданы входные массивы.
   
arrayМассив, ключи массива которого выбираются.
num
      Количество возвращаемых ключей массива;
      должно быть между 1 и количеством элементов в параметре array.
     
   Массив (array), содержащий num отдельных ключей массива array.
  
Возвращаемый массив (array) будет списком (array_is_list()). Это будет подмножество массивов (array), возвращаемых функцией array_keys().
num меньше 1 или больше
     количества элементов в параметре array,
     будет выброшено исключение ValueError.
    
   Random\Randomizer::$engine.
 
Пример #1 Пример использования Random\Randomizer::pickArrayKeys()
<?php
$r = new \Random\Randomizer();
$fruits = [ 'red' => '🍎', 'green' => '🥝', 'yellow' => '🍌', 'pink' => '🍑', 'purple' => '🍇' ];
// Выборка 2 случайных ключей массива:
echo "Ключи: ", implode(', ', $r->pickArrayKeys($fruits, 2)), "\n";
// Выборка ещё 3:
echo "Ключи: ", implode(', ', $r->pickArrayKeys($fruits, 3)), "\n";
?>Вывод приведённого примера будет похож на:
Ключи: yellow, purple Ключи: red, green, yellow
Пример #2 Выбор случайных значений
<?php
$r = new \Random\Randomizer();
$fruits = [ 'red' => '🍎', 'green' => '🥝', 'yellow' => '🍌', 'pink' => '🍑', 'purple' => '🍇' ];
$keys = $r->pickArrayKeys($fruits, 2);
// Поиск значения для выбранных ключей.
$selection = array_map(
    static fn ($key) => $fruits[$key],
    $keys
);
echo "Значения: ", implode(', ', $selection), "\n";
?>Вывод приведённого примера будет похож на:
Значения: 🍎, 🍇
