自由にダウンロードして使用することができます。 しかし、著作権に関する注意書きは削除しないでください。詳細は PHP ライセンス を確認ください。
はい。ただし、このドキュメントを読んでも答えが見つからない場合に限ります。 また、サポートをするためにはある程度の情報 (使用しているプラットフォームが Window か *nix か Mac か、 PHP のバージョン、インストールしている PEAR パッケージなど) が必要です。場合によってはあなたの書いたスクリプトそのものも必要かもしれません。
PEAR のバグトラッカーで報告してください。
PEAR ( PHP Extension and Application Repository の短縮形) は、再利用可能な PHP コンポーネントのフレームワーク、 そしてその配布システムのことです。
PEAR マニュアル と PEAR FAQ も忘れずに読んでください。
PHP5 用のコード (関数、定数、拡張モジュール) を無視させたい場合は、 (ファイル、ディレクトリ、文字列などの) パース時のオプション "ignore_versions" を指定します。この例では、 カレントディレクトリをパースする際に PHP 5.0.0 から PHP 5.2.0 までのコードを無視します。
<?php require_once 'PHP/CompatInfo.php'; $dir = dirname(__FILE__); $options = array('ignore_versions' => array('5.0.0', '5.2.0')); $pci = new PHP_CompatInfo(); $res = $pci->parseDir($dir, $options); var_dump($res); ?> |
API 1.8.0 ではこのような挙動になりましたが、すべての出力イベントを Null レンダラに処理させることもできます。その場合は、 null 値 (大文字小文字は区別しません) をクラスコンストラクタの最初のパラメータとして指定します。
<?php require_once 'PHP/CompatInfo.php'; $pci = new PHP_CompatInfo('null'); $res = $pci->parseData($datasource); // 出力される結果は、次の行が生成するもののみです var_dump($res); ?> |
単一のファイルを処理する場合なら、 プログレスバーや処理中メッセージを表示する必要は特にありません。 しかし、多くのサブディレクトリやファイルが存在するディレクトリを処理する場合は、 それなりの時間がかかります。
実行中のインターフェイス (CLI あるいはウェブ) によって、 プログレスバーや処理中メッセージを表示する方法は 2 通りあります。
警告 | |
プログレスバーを表示するように指定したときに PEAR::Console_ProgressBar パッケージがインストールされていなければ、デフォルトのテキストメッセージを使用します (エラーにはなりません)。
|
CLI で pci コマンドを使う場合 -p|--progress スイッチで bar (プログレスバー) あるいは text (シンプルなテキストメッセージ) のいずれかを指定します。
pci --summarize --progress bar --dir C:\Temp\beehiveforum082\forum |
CLI で pci コマンドを使わない場合 クラスのコンストラクタの 2 番目のパラメータ (ドライバ固有のオプション) を使用します。 キー progress に bar (プログレスバー) あるいは text (シンプルなテキストメッセージ) を指定します。 また、サイレントモードを無効にすることも忘れないようにしましょう (以前のバージョンとの互換性を保つため、デフォルトでは有効になっています)。
<?php require_once 'PHP/CompatInfo.php'; $driverType = 'csv'; $driverOptions = array('silent' => false, 'progress' => 'bar'); $pci = new PHP_CompatInfo($driverType, $driverOptions); ?> |
- 79/419 files [====>-----------------] 18.85% Elapsed Time: 00:28.93 |
Web SAPI の場合 配布物の中の examples ディレクトリに、 pci180_parsefolder_tohtml.php という名前のサンプルがあります。このサンプルでは PEAR::HTML_Progress2 パッケージを用いて COMET (AJAX ではありません) によるプログレスバーを作成しています。