質問: **CentOSにyumでPHPをインストールしたと仮定** ・PHPプログラムを実行すると、どのファイルを見に行くのでしょうか? ・バイナリファイル(usr/bin/php?)? ・PHPの標準関数定義は、どのファイルで定義されているのでしょうか? ・コンパイルされた状態で1つのファイルとして存在している? --- **追記** ・下記コマンド結果はどういう意味でしょうか? ・このリンク先で掲載されているように、結果にaliasと表示されなければエイリアスではない? ・あるいはaliasと明示されなくてもエイリアスの可能性はある? ``` $ which -a php ``` > > /opt/remi/php70/root/usr/bin/php > > /usr/bin/php > > > ``` $ type -a php ``` > > php is /opt/remi/php70/root/usr/bin/php > > php is /usr/bin/php > > >
回答: **1), 2) への解答** PHPの配置場所は**whereis**コマンドで、知ることができます。 私の環境だと ``` [vagrant@local ~]$ whereis php php: /usr/bin/php /usr/lib64/php /etc/php.d /etc/php.ini /usr/include/php /usr/share/php /usr/share/man/man1/php.1.gz ``` 上記のようになっています。シンボリックリンクの可能性もありますが、/usr/bin/php, /usr/lib64/phpあたりにあると推測できます。 通常、/usr/binにパスが通っているので、phpの実行が可能となっています **3), 4)** 標準関数はビルトイン、つまりバイナリの中に定義されています。 コード上の話であれば例えばですが、array系だと 上記で定義されています。