bigint
大きな数を計算するために、phpにクラスがあります。時間制限を除けば、うまく機能します。
で制限時間を設定しました
set_time_limit(900);
私のbigint.phpファイルで、それはlocalhostで動作します。しかし、私の Web ホストで 999^999 を計算しようとすると、エラーが発生します。
致命的なエラー: 156 行目の /home/vhosts/mysite.com/http/bigint/bigint.php で最大実行時間が 10 秒を超えました
これは私のコードです:
public function Multiply_Digit($digit){ //class function of bigint
if($digit==0){$this->str="0";}
else
{
$len=$this->length();
$Result = new bigint("0");
$carry=0;
$current;
/*line 156:*/ for ($i = 0; $i < $len; $i++)
{
$current = $this->str[$len-$i-1] * $digit;
if ($i == 0) { $Result->str = ""+(($current + $carry) % 10); }
else{ $Result->str .= ""+(($current + $carry) % 10); }
$carry = (($current+$carry) - ($current+$carry)%10)/10;
}
$Result->str .= ""+$carry;
$Result->str = strrev($Result->str);
$Result->TrimLeadingZeros();
$this->str = $Result->str;//sacma oldu.
}//else. digit not zero
}//Multiply_Digit()
set_time_limit(900);
PHPファイルの開始とクラスのコンストラクターの両方を入れてみましたが、どれも機能しませんでした。
セッションの問題だと思い、ブラウザを閉じてページを開き直しましたが、制限時間として 10 秒かかります。
ここで何が間違っていますか?