個人的には、使い捨てのスクリプトで、かつコマンドラインから実行する場合であれば**set_time_limit(0)**にすることがありますが(どちらにしてもコマンドラインだとデフォルト値は「0」だったと思いますが)、それ以外の時にはこの値は変更しません。
少なくとも**ini_set()ではなくてset_time_limit()を使うべきだと思いますし、ましてWebServer上のスクリプトでset_time_limit(0)**にすることはないと思います。
そんな負荷の大きそうなスクリプトを複数のユーザが走らせればサーバのリソースを圧迫しますし、どのような使い方をしているのかわかりませんが、処理が終わるまでずっとユーザが待ち続けるのでしょうか?
どちらにしても推奨できません。
どうしてもそのような負荷の大きい処理をしなければならないのであれば、cronで深夜などにシェルなどから実行するようにしますが・・・。
あるいは全体の見直しが必要だと思いますがいかがでしょうか。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。