PHPをコマンドライン(CLI)で使用する - MONO*LOG

PHPをコマンドライン(CLI)で使用する

PHPはApacheなどWEBサーバと連携して使用することが多いが、v4.2.0以降ではコマンドライン(CLI)でも動作するようになっている。UNIX、LINUX系では、シェル(csh、bashなど)やPerlなどの言語を標準で使えるが、どうせならPHPでバッチプログラムなどを作成してもいいだろう。
v4.3.0以前のPHPをコマンドラインで利用するには明示的に ./configure --enable-cli する必要があったが、現在のバージョンではデフォルトで有効となった。configureオプションでapacheのapxsなどのSAPIモジュールを有効にするか、--disable-cgi オプションを指定するとCLIがインストールされる。

ただし、気をつけなければ行けないのは「PHPをCLIとしてのみ使用したい」とき。
このとき、configureオプションから単にApacheのDSOモジュールサポートオプション(--with-axps)を外すと、PHPがCGIとしてインストールされてしまう。

もし、シェルで

$ php --help
Usage: php [-q] [-h] [-s] [-v] [-i] [-f <file>]
php <file> [args...]



のように、「-r」オプションが表示されない場合はおそらくCGIとしてインストールされている。これでは、実行ごとにいちいちヘッダを出力されてしまったり、色々とめんどくさいことになってしまう。

こんなときは、「make install」直後に「make install-cli」としてみよう。今度は「-r」オプションが表示されたはずだ。
「-r」オプションはちょっとしたコードをシェル上で試せるのでとても便利でおすすめです。


[参考]
http://jp.php.net/manual/ja/features.commandline.php

コメントする

アーカイブ

Music