Php 循环使用十进制值
作为PHP项目的一部分,我需要返回任意间隔中包含的每个值的正弦值。此外,我还需要能够设置函数的“范围”,即需要循环小数位数 例如:间隔1至3的小数点后1位包括: 1, 1.1, 1.2, ... 2.8,2.9,3 同一时间间隔的小数点后2位 1,1.01,1.02。。。2.98,2.99,3 等等。。。我试着用“Of”循环来做,但它只考虑自然数。< /P>Php 循环使用十进制值,php,math,Php,Math,作为PHP项目的一部分,我需要返回任意间隔中包含的每个值的正弦值。此外,我还需要能够设置函数的“范围”,即需要循环小数位数 例如:间隔1至3的小数点后1位包括: 1, 1.1, 1.2, ... 2.8,2.9,3 同一时间间隔的小数点后2位 1,1.01,1.02。。。2.98,2.99,3 等等。。。我试着用“Of”循环来做,但它只考虑自然数。< /P> 建议?您可以调整以下代码以满足您的需要: $start = 1; $end = 3; $place = 1; $step = 1 / p
建议?您可以调整以下代码以满足您的需要:
$start = 1;
$end = 3;
$place = 1;
$step = 1 / pow(10, $place);
for($i = $start; $i <= $end; $i = round($i + $step, $place))
{
echo $i . "\n";
}
您可以调整以下代码以满足您的需要:
$start = 1;
$end = 3;
$place = 1;
$step = 1 / pow(10, $place);
for($i = $start; $i <= $end; $i = round($i + $step, $place))
{
echo $i . "\n";
}
为什么第一个示例输出中的3不在第二个示例输出中?为什么第一个示例输出中的3不在第二个示例输出中?Dejavu:为什么输出中缺少3?^^^@Nobody:这只是一个浮点错误。我已经更新了我的答案来解决这个问题。非常感谢你,这非常有效!!只有一件事,当我把小数位数提高到4-5时,它会变得非常慢,有没有办法让它更快?(我正在运行localhost)本质上,当你创建更多的值时,它会变慢。我想说,这已经是使用php可以获得的最快方法。如果想要更快,可能需要更快的语言或映射到更快语言的内置函数^^^^实际上,瓶颈似乎是输出(我没有检查这是连接还是编辑器)。只是循环本身在这里运行5位小数大约需要一秒钟,但是输出那20万行和其他东西真的会停滞。德哈武:为什么输出中缺少3位?^^^@Nobody:那只是一个浮点错误。我已经更新了我的答案来解决这个问题。非常感谢你,这非常有效!!只有一件事,当我把小数位数提高到4-5时,它会变得非常慢,有没有办法让它更快?(我正在运行localhost)本质上,当你创建更多的值时,它会变慢。我想说,这已经是使用php可以获得的最快方法。如果想要更快,可能需要更快的语言或映射到更快语言的内置函数^^^^实际上,瓶颈似乎是输出(我没有检查这是连接还是编辑器)。只是循环本身在这里运行大约需要一秒5位小数,但是输出那200000行和其他东西真的会停滞。