(PHP 8 >= 8.2.0)
Random\Randomizer::pickArrayKeys — ランダムに配列のキーを選択する
   指定された array に存在する、
   num 個の異なる配列のキーを等確率に選びます。
  
   指定された array の、
   個々のキーが返される確率は等しくなります。
  
    配列のキーの選ばれ方は、
    指定された array
    の内部構造に依存します。
    ふたつの配列が等しく、かつ
    Random\Engine の内部的なステートが等しくても、
    指定された配列の作られ方によっては返されるキーが異なる可能性があります。
   
arrayキーを選ぶ配列
num
      返すべき配列のキーの数。
      1 以上かつ、
      array の要素数以下である必要があります。
     
   array の
   異なる num 個のキーを含んだ配列を返します。
  
返される配列はリスト (array_is_list()) になります。 これは array_keys() が返す配列のサブセットです。
num の値が
     1 より小さかったり、
     array の要素数より大きい場合、
     ValueError がスローされます。
    
   Random\Randomizer::$engine に存在する
    Random\Engine::generate() メソッド
    がスローした、あらゆる Throwable がスローされます。
  
 例1 Random\Randomizer::pickArrayKeys() の例
<?php
$r = new \Random\Randomizer();
$fruits = [ 'red' => '🍎', 'green' => '🥝', 'yellow' => '🍌', 'pink' => '🍑', 'purple' => '🍇' ];
// 配列のキーをふたつ、ランダムに取り出します
echo "Keys: ", implode(', ', $r->pickArrayKeys($fruits, 2)), "\n";
// 別の配列のキーを3つ取り出します
echo "Keys: ", implode(', ', $r->pickArrayKeys($fruits, 3)), "\n";
?>上の例の出力は、 たとえば以下のようになります。
Keys: yellow, purple Keys: 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 "Values: ", implode(', ', $selection), "\n";
?>上の例の出力は、 たとえば以下のようになります。
Values: 🍎, 🍇
