指定された範囲内で一意の乱数を生成する必要性は、さまざまなプログラミング シナリオで発生します。指定されたコードはこの問題に対処しようとしていますが、効率の点では不十分です。より最適化された堅牢なアプローチを詳しく見てみましょう。
重要なのは、数値範囲を含む配列を作成し、PHP の組み込み shuffle() 関数を利用して順序をランダム化することにあります。強化されたコードは次のとおりです。
$numbers = range(1, 20); shuffle($numbers);
このアプローチでは、目的の範囲内で一意の乱数の配列を効率的に生成します。
あるいは、ロジックを再利用可能な関数にカプセル化することもできます。
function UniqueRandomNumbersWithinRange($min, $max, $quantity) { $numbers = range($min, $max); shuffle($numbers); return array_slice($numbers, 0, $quantity); }
例:
print_r( UniqueRandomNumbersWithinRange(0, 25, 5) );
予想される結果:
Array ( [0] => 14 [1] => 16 [2] => 17 [3] => 20 [4] => 1 )
このアプローチでは、指定された範囲内で一意の乱数が保証され、アプリケーションにとって効率的で信頼性の高い数値生成が保証されます。
以上がPHP で特定の範囲内で一意の乱数を効率的に生成するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。