-1

文字列を次の形式に変換する必要があります。

1000 -> 0000001000
10000 -> 0000010000
25000 -> 0000025000

私はこのようにしてみましたceil(str_pad($range_array[0],6 , "0", STR_PAD_LEFT))

しかし、これは 1000 では機能しますが、 10,000 では失敗します。

それを作成する機能はありますか?

4

3 に答える 3

9
echo sprintf("%010d", $number);
于 2013-07-29T16:38:54.273 に答える
1

6 でパディングしている理由、または を使用している理由がわかりませんceil()。str_pad は、必要な文字列の全長を取ります:

<?php

foreach (array(1000, 10000, 25000) as $int) {
    echo str_pad($int, 10, '0', STR_PAD_LEFT) . "\n";
}
于 2013-07-29T16:40:05.763 に答える
0

マニュアルを参照してsprintf()、数値を適切にフォーマットするために使用できます

 $result = sprintf( '%010.0f', $inputNumber );

またはまだ良い

 $result = sprintf( '%010d', $inputNumber );
于 2013-07-29T16:39:32.173 に答える