我有一个代码,可以很好地工作到1000万,即10,000,000,但停止工作以获得更高的价值。无论如何在PHP中使用非常大的数字
<?php
$num_value_string;
$counter=0;
for($i=1;$i<=100000000;$i++)
{
$num_value_string=(string)$i;
if(strstr($num_value_string,"17"))
$counter++;
}
echo $counter . " numbers between 1 to " . --$i . " contains 17";
?>
答案 0 :(得分:0)
您需要为大数字使用适当的库(例如BC Math),但通常这用于计算数字计算,而不是(长)循环中的变量。
答案 1 :(得分:-2)
查看您的代码,PHP可以处理这些数字而无需额外的东西。所以你的问题是超时或内存限制。尝试在脚本开头设置此项
ini_set("memory_limit","256M"); // very large !
set_time_limit ( 3600 ); // one hour is more then enough !
顺便说一句,你的问题可以更简单地解决!