0

私はこのようなコードを持っています

var_dump(randomDigits(20));
function randomDigits($numDigits) {
    if ($numDigits <= 0) {
        return '';
    }

    return mt_rand(0, 9) . randomDigits($numDigits - 1);
}

echo "<br />";

var_dump(randomDigits2(20));
function randomDigits2($numDigits) {
    if ($numDigits <= 0) {
        return '';
    }

    return mt_rand(1000, 9999) . randomDigits($numDigits - 4);
}

var_dump(randomDigits3(20));
function randomDigits3($numDigits) {
    $digits = '';

    for ($i = 0; $i < $numDigits; ++$i) {
        $digits .= mt_rand(0, 9);
    }

    return $digits;
}

3 つの関数はすべて 20 桁を生成します。しかし、あなたはどちらを選びますか?なぜですか? これらの 2 つがどちらも良くない場合、例を挙げてください。前もって感謝します

4

1 に答える 1

0

私はループに行きます、それをシンプルに保ちます

<?php

function random_number($length = 20)
{
    $number = '';
    for ($i = 0; $i < $length; $i++) $number .= mt_rand(0,9);
    return $number;
}

echo random_number();
于 2012-12-15T14:42:47.247 に答える