これは話すことではありません。すぐに本題に進み、アイデアについて話しましょう。
最初に行うことは、 mt_rand( ) 関数を使用して、指定された数の乱数を生成します;
次に、 array_unique() 関数を使用して重複を削除します; (推奨学習: PHP プログラミングの入門から熟練度まで)
重複の削除のため、取得された数は指定された数に対して十分ではありません;
したがって、コアは while ループを使用することです; 指定された数まで数値の数を取得します;
こちらへ 基本的には終わりで大丈夫です;
完璧を求める人向け; sort();
The を使用することもできますソートに使用するのではなく、取得した配列キーをフォーマットするのが主な目的です 変更;
コードで話しましょう; 以下のように;
/** * 生成不重复的随机数 * @param int $start 需要生成的数字开始范围 * @param int $end 结束范围 * @param int $length 需要生成的随机数个数 * @return array 生成的随机数 */ function get_rand_number($start=1,$end=10,$length=4){ $connt=0; $temp=array(); while($connt<$length){ $temp[]=mt_rand($start,$end); $data=array_unique($temp); $connt=count($data); } sort($data); return $data; }
以上がPHPで非反復乱数を生成する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。