3

重複の可能性:
PHP で先行ゼロを使用して数値をフォーマットする

PHP を使用してランダムに選択する必要がある 00 から 29 までの値があります。rand() 関数を使用しようとしましたが、0 から 29 が得られます。00、01、02、03 などではありません。

PHP からランダムに 0 - 9 の代わりに 00 - 09 を取得する方法は? ありがとう。

4

6 に答える 6

13
$random = sprintf("%02f", rand(0,29));

または、コメントで述べたように:

$random = str_pad(rand(0,29), 2, "0", STR_PAD_LEFT);
于 2012-08-08T13:44:23.700 に答える
1

のような配列を作成します。

$array = array('00','01','02','03'....,'29');
echo $array[array_rand($array)];
于 2012-08-08T13:45:08.317 に答える
1

str_padを使用します。

$random = str_pad(rand(0, 29), 2, '0', STR_PAD_LEFT);
于 2012-08-08T13:46:52.060 に答える
0

a) 値が 10 未満の場合は「0」を追加します

b) number_format を使用して出力を処理する

于 2012-08-08T13:44:52.153 に答える
0

sprintf を使用して数値をフォーマットできます。

$number = rand(0,29);
$number = sprintf("%02d", $number);

sprintf の PHP マニュアルを検索

于 2012-08-08T13:46:36.413 に答える
0

追加の関数に依存しないこのアプローチを使用することもできます。

$n = rand(0, 29);
if( $n < 10 ) $n = "0" . $n;
于 2012-08-08T13:47:50.127 に答える