アプリ版:「スタンプのみでお礼する」機能のリリースについて

PHPのループ数限界値について
宜しくお願い致します。PHP 5.1.6を使用しております。

PHPのforやwhileのループ処理について、限界のループ数というのは存在するのでしょうか?
今作っているプログラムで、約15,000項目の配列と約10,000項目の配列で2重のループ処理しています。
この場合のループ数は15,000×10,000=150,000,000回の繰り返し回数となってしまいます。
しかも、この配列数は今後も増える可能性が高いです。
ループの限界値が何回なのか、教えてください。

A 回答 (3件)

PHPのループ数限界値は、


タイムアウトになるまでと思います。

タイムアウトの時間はphp.iniで設定されています。

Webサーバーなら、
Webサーバーのタイムアウトより長い場合は、Webサーバーの設定時間でタイムアウトと思います。

レンタルサーバーではタイムアウトの変更は、出来ないところがほとんどと思います。専用サーバーなら可能なところもあるでしょうが。
    • good
    • 0

下の回答にあるようにタイムアウトにひっかかる、あと 上記をメモリ上での展開の仕方によりますが利用可能なメモリの上限にひっかかる、などが考えられます。



上記にひっかからなければループ回数の上限はないはずです。


が、これも下の回答にあるとおり設計を見直すべきだと思います。
仮に上限にひっからなかったとしても完了に10分かかった、とかになった場合でも 仕様を満たしているのでしょうか?
具体的な内容がわからないのでなんとも言えませんが 処理を簡略化するよう設計変更がかならず可能だと思います。
    • good
    • 0

物理的な限界値より別のネックが懸念されます。


1億回以上の処理を冗長に回す必要があるのかフローを見直す必要があるのでは?

仮に必要だとしても、処理をわけて分散処理にかけるなど実行までには
相応の工夫が必要な案件ではないでしょうか?
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!