PHP で range() 関数を使用して、分数または小数のリストを生成することはできますか?
1949 次
2 に答える
8
ええ、ステップ (第 3 パラメーター) を指定すると。このパラメーターは PHP 5 でのみ使用できますが、いずれにせよ、今ではそれを使用しているはずです。
たとえば、0 から 1 までの小数を 0.1 間隔で生成するには、次のようにします。
print_r(range(0, 1, 0.1));
出力:
Array
(
[0] => 0
[1] => 0.1
[2] => 0.2
[3] => 0.3
[4] => 0.4
[5] => 0.5
[6] => 0.6
[7] => 0.7
[8] => 0.8
[9] => 0.9
[10] => 1
)
于 2011-01-15T06:58:45.970 に答える
1
おそらく範囲の境界に応じた丸めの問題が原因で、PHP 7.0.10で壊れています。
範囲で機能します0.1..0.9
:
print_r(range(0.1, 0.9, 0.1));
Array
(
[0] => 0.1
[1] => 0.2
[2] => 0.3
[3] => 0.4
[4] => 0.5
[5] => 0.6
[6] => 0.7
[7] => 0.8
[8] => 0.9
)
0.2..0.9
たとえば、範囲のビットが壊れています(0.9
が欠落しています):
print_r(range(0.2, 0.9, 0.1));
Array
(
[0] => 0.2
[1] => 0.3
[2] => 0.4
[3] => 0.5
[4] => 0.6
[5] => 0.7
[6] => 0.8
)
于 2016-09-09T18:06:30.253 に答える