是否可以在 PHP 中使用 range() 函数来生成分数或小数列表?
问问题
1949 次
2 回答
8
是的,如果您指定步骤(第三个参数)。此参数仅在 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 回答