PHP Cliのあまり知られていない(と思われる)便利機能
PHP Cliにはオプションが大量に存在します。
その中でも私がよく使うものを紹介します。
そもそもPHPのCli版を使う機会は多く無いと思いますが、知っておくと役に立つと思います。
インタラクティブシェルを実行する
a
オプションでインタラクティブシェルを起動します。
PythonやRuby(irb)のようなものですが、これらと違って echo
や var_dump()
等を使わないとコンソール上に何も表示されないことだけ注意です。
もちろん、 include
や require
でファイルを読み込むことも可能です。
$ php -a
Interactive mode enabled
php > $a = ['A' => 'a', 'B' => 'b', 'C' => 'c']; # PHPなのでセミコロン必須
php > var_dump($a);
array(3) {
["A"]=>
string(1) "a"
["B"]=>
string(1) "b"
["C"]=>
string(1) "c"
}
php > require_once('hello.php'); # PHPファイルを読み込んで関数を実行することも可能
php > hello();
Hello world!
php > exit # exitで終了する
$
簡易サーバを立てる
S
オプションでビルトインサーバを立てることができます。
php -S localhost:8888
のようにコマンドを実行すると、ポート8888でサーバが立ちます。
ドキュメントルートは実行したディレクトリになります。
$ php -S localhost:8888
PHP 7.3.11-0ubuntu0.19.10.3 Development Server started at Tue Mar 31 03:12:04 2020
Listening on http://localhost:8888
Document root is /home/fwhy/php_prj_01
Press Ctrl-C to quit.
[Tue Mar 31 03:12:14 2020] 127.0.0.1:33240 [404]: / - No such file or directory
[Tue Mar 31 03:12:14 2020] 127.0.0.1:33242 [404]: /favicon.ico - No such file or directory
[Tue Mar 31 03:14:13 2020] 127.0.0.1:33254 [200]: /info.php
↑実行中はコンソールにアクセスログが表示されます。