[PHP-users 27211] Re: ブラウザのタイムアウトを回避できません

ENOMOTO yhe10046 @ nifty.com
2005年 10月 13日 (木) 21:03:07 JST


さわだ様

まだ解決していないので、助かります。
ありがとうございます。

さわだ様のおっしゃるように、私も、はじめ、
http://ns1.php.gr.jp/pipermail/php-users/2003-February/013647.html
を参照にして、まったくこの通りにやってみました。


  // 実行時間を制限しない
  set_time_limit(0);

  // 出力をバッファリングしない(==日本語自動変換もしない)
  ob_end_clean();

  // IEのために256バイト空文字出力
  echo str_pad('',256);

  // 一時間くらいがんばる
  for ($time=time(); time()<$time+3600; ) {

    // ブラウザをあきらめさせないためちびちび結果出力
    // 出力はブランクだけでもいいと思う
    echo (time()-$time)." seconds running<br>\n";

    // 出力をフラッシュする
    flush();

    // 時間のかかる処理
    // ***** ここにバックアッププログラムを入れました *****
    sleep(30);

  }


結果は、
「// ***** ここにバックアッププログラムを入れました *****」
の部分が2回走り、2回目の処理途中で、例のごとく中断してしまいました。
「時間のかかる処理」を入れる場所が違うのでしょうか?
処理が終わったら、for文を抜けて、次のステップに行きたいのですが、
どうしたら良いのでしょうか・・・。

ご教授の程、よろしくお願いしますm(_ _)m


KUMIKO.E




PHP-users メーリングリストの案内