ホームページ  >  記事  >  バックエンド開発  >  PHPで数値を繰り返さずに4桁のランダムな数値を生成する方法

PHPで数値を繰り返さずに4桁のランダムな数値を生成する方法

DDD
DDDオリジナル
2023-08-02 13:54:221955ブラウズ

php は、数値ステップを繰り返さずに 4 桁のランダムな数値を生成します: 1. "generateRandomNumber" 関数を定義します; 2. "range" 関数を使用して、0 ~ 9 を含む配列 $digitals を作成します; 3. を使用します。 "array_rand "関数は配列内の要素をランダムに選択します。 4. 最初の桁が 0 であってはならず、他の桁が繰り返されないというルールを確認して、4 桁の数値が生成されるまでループで数値を選択します。 5. を返します。生成された乱数。

PHPで数値を繰り返さずに4桁のランダムな数値を生成する方法

#この記事の動作環境: Windows 10 システム、PHP8.1.3 バージョン、Dell G3 コンピューター。

繰り返しのないランダムな 4 桁の数値を生成するには、PHP の乱数関数と配列を使用できます。可能な実装は次のとおりです。

<?php
function generateRandomNumber() {
    $digits = range(0, 9); // 创建一个包含0到9的数组
    $randomNumber = &#39;&#39;;
    // 随机选择数组中的元素,直到生成一个4位数
    while (strlen($randomNumber) < 4) {
        $index = array_rand($digits); // 从数组中随机选择一个索引
        $digit = $digits[$index]; // 获取对应的数字
        // 首位数字不能为0,且其他位数字不能重复
        if (strlen($randomNumber) == 0 && $digit == 0) {
            continue;
        } elseif (strpos($randomNumber, $digit) !== false) {
            continue;
        }
        $randomNumber .= $digit; // 将数字添加到结果中
    }
    return $randomNumber;
}
$number = generateRandomNumber();
echo $number;
?>

このコードは、range 関数を使用して 0 ~ 9 を含む配列を作成し、array_rand 関数を使用して配列内の要素をランダムに選択するgenerateRandomNumber 関数を定義します。次に、最初の桁を 0 にすることはできず、他の桁を繰り返すことはできないというルールを確認して、4 桁の数値が生成されるまでループで数値を選択します。最後に、生成された乱数が返されます。

generateRandomNumber 関数を呼び出して 4 桁の乱数を生成し、echo ステートメントを使用して出力できます。

乱数の生成は確率に基づいているため、生成される乱数は繰り返される可能性があることに注意してください。多数の一意の乱数を生成する必要がある場合は、より複雑なアルゴリズムの実装が必要になる場合があります。

以上がPHPで数値を繰り返さずに4桁のランダムな数値を生成する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。