PHPのインストール フォルダにあるバッチファイル、go-pear.batを実行します。
go-pear.batが存在しない場合、http://pear.php.net/go-pear.pharをphp.exeのフォルダにPEARフォルダを作成して保存し、コマンドプロンプトから
C:\PHP>php.exe -d output_buffering=0 PEAR\go-pear.phar
と実行することで代替できます。これはgo-pear.batが、
@ECHO OFF set PHP_BIN=php.exe %PHP_BIN% -d output_buffering=0 PEAR\go-pear.phar pause
という内容だからです。または単純に、
C:\PHP>php.exe PEAR\go-pear.phar
とします。Manual :: Getting and installing the PEAR package manager
実行時に「Warning: PHP Startup: Unable to load dynamic library '***' - 指定されたモジュールが見つかりません。」となるときには、php.iniのextension_dirで適切なディレクトリが指定されているか確認します。
go-pear.batを実行すると、次のように問われます。
Are you installing a system-wide PEAR or a local copy? (system|local) [system] :
a system-wide PEAR (システム共有のPEAR) としてインストールするならば、そのままEnterを押下します。a local copy (ローカルコピー) とするならば、"local"と入力します。Manual :: 共有ホストでの PEAR のローカルコピーのインストール
Below is a suggested file layout for your new PEAR installation. To change individual locations, type the number in front of the directory. Type 'all' to change all of them or simply press Enter to accept these locations. 1. Installation base ($prefix) : C:\PHP 2. Temporary directory for processing : C:\PHP\tmp 3. Temporary directory for downloads : C:\PHP\tmp 4. Binaries directory : C:\PHP 5. PHP code directory ($php_dir) : C:\PHP\pear 6. Documentation directory : C:\PHP\docs 7. Data directory : C:\PHP\data 8. User-modifiable configuration files directory : C:\PHP\cfg 9. Public Web Files directory : C:\PHP\www 10. Tests directory : C:\PHP\tests 11. Name of configuration file : C:\Windows\pear.ini 12. Path to CLI php.exe : . 1-12, 'all' or Enter to continue:
インストールする場所を確認します。変更が不要ならばEnterを押下します。このときインストールする場所へのアクセス権がないとインストールに失敗し、次のように表示されます。
*WARNING* We found php.exe under ., it uses an unknown SAPI. PEAR commandline tool has not been tested with it, if you have a CLI (or CGI) php.exe available, we strongly recommend using it.
Unable to create Temporary directory for processing C:\PHP\tmp. Run this script as administrator or pick another location.
このときはコマンドプロンプトを管理者として起動し、再度php.exe -d output_buffering=0 PEAR\go-pear.phar
を実行するか、インストールするディレクトリを変更します。
インストールに成功すると、次のような表示となります。
Beginning install... Configuration written to C:\Windows\pear.ini... Initialized registry... Preparing to install... installing phar://C:/PHP/PEAR/go-pear.phar/PEAR/go-pear-tarballs/Archive_Tar-1.3.3.tar... installing phar://C:/PHP/PEAR/go-pear.phar/PEAR/go-pear-tarballs/Console_Getopt-1.2.3.tar... installing phar://C:/PHP/PEAR/go-pear.phar/PEAR/go-pear-tarballs/PEAR-1.9.0.tar... installing phar://C:/PHP/PEAR/go-pear.phar/PEAR/go-pear-tarballs/Structures_Graph-1.0.2.tar... installing phar://C:/PHP/PEAR/go-pear.phar/PEAR/go-pear-tarballs/XML_Util-1.2.1.tar... install ok: channel://pear.php.net/Archive_Tar-1.3.3 install ok: channel://pear.php.net/Console_Getopt-1.2.3 install ok: channel://pear.php.net/Structures_Graph-1.0.2 install ok: channel://pear.php.net/XML_Util-1.2.1 install ok: channel://pear.php.net/PEAR-1.9.0 PEAR: Optional feature webinstaller available (PEAR's web-based installer) PEAR: Optional feature gtkinstaller available (PEAR's PHP-GTK-based installer) PEAR: Optional feature gtk2installer available (PEAR's PHP-GTK2-based installer) PEAR: To install optional features use "pear install pear/PEAR#featurename"
****************************************************************************** WARNING! The include_path defined in the currently used php.ini does not contain the PEAR PHP directory you just specified: <C:\PHP\pear> If the specified directory is also not in the include_path used by your scripts, you will have problems getting any PEAR packages working. Would you like to alter php.ini <C:\PHP\php.ini>? [Y/n] :
php.iniに、pearのパスを記述するように促されます。ここでYと入力すると、php.iniに
;***** Added by go-pear include_path=".;C:\PHP\pear" ;*****
のように追記されます。
php.ini <C:\PHP\php.ini> include_path updated. Current include path : .;C:\php\pear Configured directory : C:\PHP\pear Currently used php.ini (guess) : C:\PHP\php.ini Press Enter to continue:
確認したらEnterを押下します。続けて警告が表示されますが、インストールはこれで完了です。
インストール完了時、次のような警告が表示されることがあります。
** WARNING! Old version found at C:\PHP, please remove it or be sure to use the new c:\php\pear.bat command The 'pear' command is now at your service at c:\php\pear.bat
pear.batを実行したとき、syntax error, unexpected '(' in Unknown on line 14のようにエラーが返されることがあります。これはPEARのインストール ディレクトリのパスに、空白が含まれる場合に生じる問題です。これを解決するには、pear.batの
include_path="%PHP_PEAR_INSTALL_DIR%"
と記述されている部分を、
"include_path='%PHP_PEAR_INSTALL_DIR%'"
に修正します。Bug #16644 :: pear.bat returns syntax error when parenthesis are in install path.
以下の環境変数への登録は、必須ではありません。
インストール完了時、次のようにPEAR_ENV.regの実行を促すメッセージが表示されます。
* WINDOWS ENVIRONMENT VARIABLES * For convenience, a REG file is available under C:\PHP\PEAR_E NV.reg . This file creates ENV variables for the current user. Double-click this file to add it to the current user registry.
これを実行すると、レジストリにユーザー環境変数が登録されます。その内容は、
REGEDIT4 [HKEY_CURRENT_USER\Environment] "PHP_PEAR_SYSCONF_DIR"="C:\\PHP" "PHP_PEAR_INSTALL_DIR"="C:\\PHP\\pear" "PHP_PEAR_DOC_DIR"="C:\\PHP\\docs" "PHP_PEAR_BIN_DIR"="C:\\PHP" "PHP_PEAR_DATA_DIR"="C:\\PHP\\data" "PHP_PEAR_PHP_BIN"="C:\\PHP\\php.exe" "PHP_PEAR_TEST_DIR"="C:\\PHP\\tests"
のようなもので、[HKEY_CURRENT_USER\Environment]に設定値が書き込まれます。環境変数が誤って設定されていると、pear.batの実行時に
C:\php>pear.bat PHP_PEAR_INSTALL_DIR is not set correctly. Please fix it using your environment variable or modify the default value in pear.bat The current value is: C:\PHP5\pear
のように表示されます。そのときはレジストリの設定値を確認します。
パッケージのインストールは、pear.batを使用し
pear install options <package>
とします。optionsには、
を指定できます。たとえばCache_Liteをインストールするならば、
C:\php>pear install Cache_Lite
として、成功すると
downloading Cache_Lite-1.7.15.tgz ... Starting to download Cache_Lite-1.7.15.tgz (32,355 bytes) .........done: 32,355 bytes install ok: channel://pear.php.net/Cache_Lite-1.7.15
のように出力されます。インストール時に、*** is not writeable by the current userのようにエラーとなるときには、コマンドプロンプトを管理者として実行してインストールを行います。
インストールの実行時に、
WARNING: channel "pear.php.net" has updated its protocols, use "pear channel-update pear.php.net" to update
と表示されるときには、指示通り
C:\>pear channel-update pear.php.net
と実行します。成功すると、
Updating channel "pear.php.net" Update of Channel "pear.php.net" succeeded
と表示されます。一方で
Channel "pear.php.net" is up to date
と表示されるならば、すでに最新版です。
C:\>pear list
INSTALLED PACKAGES, CHANNEL PEAR.PHP.NET: ========================================= PACKAGE VERSION STATE Archive_Tar 1.3.3 stable Console_Getopt 1.2.3 stable PEAR 1.9.0 stable Structures_Graph 1.0.2 stable XML_Util 1.2.1 stable
のように、インストールされているパッケージの一覧が表示されます。詳細を確認するには、次項のPEAR_Infoを使用します。
PEAR_Infoで、インストールされているPEARとそのパッケージについての情報を確認できます。PEAR_Infoパッケージを
pear install PEAR_Info
のようにインストールして、
<?php require_once 'PEAR/Info.php'; $info = new PEAR_Info(); $info->display();Manual :: PEAR_Info の出力を表示する
のように使用します。結果は次のように表示されます。
http://pear.php.net/go-pear.pharのページをローカルに保存し、PEAR/go-pear.pharに上書きします。そしてgo-pear.batを実行し、再度インストールを行います。
http://pear.php.net/go-pearをgo-pear.phpというファイル名で保存し、それをサーバにアップロードします。そして、そのページをブラウザで開きます。
go-pear.phpは保守されていないため、現在ではそのままでは利用できなくなっています。よってgo-pear.phpを修整するか、必要なファイルを個別にアップロードします。そのとき必要なファイルはPEAR.phpと、たとえばCache_LiteならばCacheディレクトリの一式で、これらを任意の場所へアップロードしてそこへパスを設定します。レンタルサーバにPEARライブラリCashe_Liteをインストールする方法 | Webジェネラリスト
ページが表示されたら[Next]をクリックします。
インストールの設定画面が表示されますので、必要項目を入力します。
重要なのは、
の3項目です。設定内容を確認したら[Install]をクリックします。
インストール ログに[Installation Completed]と表示されたら、インストールは成功です。この表示がなく処理が停止しているようならば、ページを再読み込みします。
ページ下部の[Start Web Frontend of the PEAR Installer]をクリックするとパッケージマネージャが表示され、続けてパッケージをインストールできます。
パッケージをインストールするには、パッケージマネージャ (Package Manager) を開きます。それはインストール時に[Filename of WebFrontend]で指定したパスにあります。
パッケージマネージャを表示したとき、環境や設定によっては[Deprecated]や[Strict Standards]エラーが多数表示されます。これをわずらわしく感じるならば、error_reportingを設定することで非表示にできます。
インストールするパッケージ名がわかっているならば、[Quick-install a package]にそのパッケージ名を入力し、[Install]をクリックします。
PEARのライブラリを容易にインクルードできるように、PEARのパスをphp.iniで設定します。そのパスはインストール時に指定した[PHP code directory]であり、
include_path = ".:/home/account_name/pear/PEAR"
のように設定します。(環境によっては、この通りではありません)
なおPEARのパスは、パッケージマネージャの[Configuration]のページで、[PEAR directory]の項目を調べることでも確認できます。