Windows環境でPEARのコードをインクルードする

これは断片的な自分用のメモ。WinXP SP3 + PHP 5.2.9 環境。これに PEAR を go-pear.bat を起動してインストールしたもの。

include_path の値

echo get_include_path()
で現在の設定を見ると、インクルードされるディレクトリのリストが
.;C:\PHP5\PEAR
になっていて、デフォルト値でインストールしたときのディレクトリ C:\Program Files\PHP\PEAR と異なる。

Auth.phpディレクトリとインクルード

例えば認証関連のパッケージの Auth.php は C:\Program Files\PHP\PEAR\PEAR\Command\ ディレクトリ下にあるので、これを利用するときのソースプログラム例は(前項と併せると)次のようになる*1

<?php
set_include_path('.;C:\Program Files\PHP\PEAR');
require_once('PEAR\Command\Auth.php');

インクルードするだけなら次のように書いても良さそうに思うのだが、これは走らない*2

<?php
set_include_path('.;C:\Program Files\PHP\PEAR\PEAR\Command');
require_once('Auth.php');

Windows 7 で go-pear.bat を実行しても、途中で失敗してインストールできない。

Win 7 + PHP 5.3.3 環境。[コマンドプロンプト]を[管理者として実行(A)*3]して、go-pear.bat を実行すると、ちゃんとインストールしてくれるみたい。それっぽいファイルがあるなと思っただけなのだけど。

*1:だからいくつかのサイトに書いてあるような require_once 'Auth/Auth.php'; ではソースのインクルードができない。ファイルのあるディレクトリとパスをきちんと確認しないといけないようだ。

*2:多分 C:\Program Files\PHP\PEAR ディレクトリ名を利用する何かがあるのだろう

*3:[コマンドプロンプト]で右クリックする。