PEARはPHP 4との互換性も考慮して開発されているため、PHP 5ではStrictなエラーが多発します。
Strict Standards: Non-static method System::tmpdir() should not be called statically in C:\PHP\PEAR\PEAR\Config.php on line 158 Strict Standards: Non-static method System::tmpdir() should not be called statically in C:\PHP\PEAR\PEAR\Config.php on line 167 Strict Standards: Non-static method System::tmpdir() should not be called statically in C:\PHP\PEAR\PEAR\Config.php on line 176 Strict Standards: Non-static method System::which() should not be called statically in C:\PHP\PEAR\PEAR\Config.php on line 229 ...
E_STRICT
コードの相互運用性や互換性を維持するために PHP がコードの変更を提案する。(PHP 5 より)
PHP: 定義済み定数 - Manual
またPHP 5.3以降では、Deprecatedなエラーも発生します。
E_DEPRECATED
実行時の注意。これを有効にすると、 将来のバージョンで動作しなくなるコードについての警告を受け取ることができる。(PHP 5.3.0 より)
PHP: 定義済み定数 - Manual
この問題を隠蔽するには、php.iniで
error_reporting = E_ALL & ~E_STRICT & ~E_DEPRECATED
とします。error_reporting - PHP: 実行時設定 - Manual
またはerror_reporting()関数を使用して、
// エラーレベルを変更 $level = error_reporting( error_reporting() & ~E_STRICT & ~E_DEPRECATED ); // ... PEARを使用する処理 // エラーレベルを元に戻す error_reporting( $level );
とすると、必要な部分だけでエラーを抑制できます。