作者: buganini (霸格尼尼) 看板: PHP
標題: [閒聊] ignore_user_abort()
時間: Sat May 19 05:41:35 2007
ignore_user_abort()
這函式似乎很少看到...
以前也沒用過
但今天用上了
事情是這樣發生的...
弄了一個空間
讓人用FTP上傳檔案
Web部分,作檔案瀏覽的介面
對於圖檔/視訊檔,作縮圖,並且視訊檔會轉成flv提供線上播放
作縮圖和轉flv都是
轉檔的動作都寫在thumb.php裡
用exec()執行外部程式
mencoder
ffmpeg
imagemagick
之類的
其中視訊檔的縮圖,是先用
mencoder轉flv
再用ffmpeg從flv弄出jpg
但發現有的大一點的視訊檔
圖檔會生不出來
去翻存那些轉出來檔案的資料夾
發現只有flv
原因是
轉flv時轉檔轉太久
timeout後(或完成前使用者離開這一頁)browser放棄了,並告訴server不要檔案了
然後這個php沒執行完就被中斷了
所以弄出jpg檔的動作沒做到
後來用以下兩行解決
ignore_user_abort(true);
set_time_limit(0);
ignore_user_abort()可以讓php不會被中斷
於是一系列動作都會乖乖的執行完
just put something what I need. Forgive my poor English!
2008年1月20日 星期日
PHP: ignore_user_abort() 執行 PHP 程式直到結束,不理會 timeout
訂閱:
張貼留言 (Atom)

沒有留言:
張貼留言