uploadprogress 0.3.0リリース
やたらとAjaxに走っている感がありますが、とうとうファイルアップロード用プログレスパーのためのPECLが出てきました。公式にはPHP5.2.0以降で動作するとアナウンスされています。メンテナはChristian Stocker氏で、domxml拡張などをメンテしている方です。
Christian Stocker氏のblogによると、ずいぶん前にエントリしたPEAR::HTML_AJAXを使ったプログレスバーとほとんど互換性があるとのことです。
An extension to track progress of a file upload.
また、Christian Stocker氏のblogからはデモページにリンクしています。一度見てみてください。もう一つ、そこから辿っていったプロジェクトのページでsvnのURLが公開されていて、デモスクリプト一式がcheckoutできます。
で、実際にcheckoutして試してみましたが、いくつか注意点があったので、ちょっとメモしておきます。
- PEAR::HTML_AJAXが必要
- display_errors=off
- HTML_AJAXはE_STRICTに対応していない
- UploadProgressMeterStatus.phpのupload_progress_meter_get_info関数をuploadprogress_get_info関数に変更
- uploadprogress拡張でuploadprogress_get_info関数が提供される
- UploadProgressMeter.jsのUploadProgressMeter_intervalの値を適宜変更
- ローカル環境だとファイル転送があっという間なので。。。
- 大きなファイルで試す場合はLargeFileReadme.txtを参照して、適宜設定を変更する
- UploadProgressMeter.phpにも設定があるので注意