PHPの設定内容を確認する方法

webブラウザとCLIの両方で「PHP」の情報を表示させる方法です。

webブラウザから確認したい場合は、webサーバでPHPが使用できる環境が必要です。

webブラウザで確認

下記のように「phpinfo」関数を呼び出すスクリプトを記述したファイルを、webブラウザでアクセス出来る場所に作成します。

<?php
phpinfo();
?>

ファイル名は拡張子が.phpであれば特に決まりはありませんので、phpinfo.phpとかといった名前で作成してください。

その後webブラウザでアクセスすることで、PHPに関する情報が記載されたページを表示することが出来ます。

アクセス制限

「phpinfo」で表示される情報は、セキュリティ上関係のない第3者に公開するのは好ましくありません。

そのため、接続元のIPアドレスが固定されているのであれば、接続を許可するIPアドレスを制限することが出来きるので、そちらの設定もあわせて行っておいた方が良いでしょう。

「xxx.xxx.xxx.xxx」の部分には接続元のIPアドレスを記述してください。

if ($_SERVER['REMOTE_ADDR'] !== 'xxx.xxx.xxx.xxx') die();

例えば「192.168.1.100」のクライアントからのみ接続を許可させたい場合は下記のようなスクリプトとなります。

<?php
if ($_SERVER['REMOTE_ADDR'] !== '192.168.1.100') die();
phpinfo();
?>

PHPの情報を表示させるためのファイルは、確認が済んだら削除しておいた方がセキュリティ的にも良いでしょう。

CLIで確認する方法

CLIでPHPの情報を確認するには「php」で「phpinfo」を実行する方法と、「-i(–info)」オプションを使用する方法があります。

phpinfoを使用

CLIで「phpinfo」を使用しPHPの設定を確認する場合は、下記のように「-r」オプションでphpinfo関数を呼び出して、現在の情報を表示させます。

php -r 'phpinfo();'
$ php -r 'phpinfo();'
phpinfo()
PHP Version => 7.2.11

System => Linux 150-95-131-86 3.10.0-862.14.4.el7.x86_64 #1 SMP Wed Sep 26 15:12:11 UTC 2018 x86_64
Build Date => Oct 10 2018 10:00:01
Server API => Command Line Interface
Virtual Directory Support => disabled
Configuration File (php.ini) Path => /etc
Loaded Configuration File => /etc/php.ini
Scan this dir for additional .ini files => /etc/php.d
Additional .ini files parsed => /etc/php.d/10-opcache.ini,
/etc/php.d/20-bz2.ini,
/etc/php.d/20-calendar.ini,

以下省略

「i(–info)」オプションを使用

「phpinfo」関数を使用する以外にも、「-i」(–infoでも可)オプションを指定することでも現在の設定情報を表示させることが出来ます。

php -i
php --info

実際の表示例は下記のようになります。

$ php -i
phpinfo()
PHP Version => 7.2.11

System => Linux 150-95-131-86 3.10.0-862.14.4.el7.x86_64 #1 SMP Wed Sep 26 15:12:11 UTC 2018 x86_64
Build Date => Oct 10 2018 10:00:01
Server API => Command Line Interface
Virtual Directory Support => disabled
Configuration File (php.ini) Path => /etc
Loaded Configuration File => /etc/php.ini
Scan this dir for additional .ini files => /etc/php.d
Additional .ini files parsed => /etc/php.d/10-opcache.ini,
/etc/php.d/20-bz2.ini,
/etc/php.d/20-calendar.ini,

以下省略

phpinfoについて

「phpinfo」関数を使用してPHPの情報を出力させる場合、「phpinfo()」の「()」に表示させたい項目の名前か数値を指定することで、その情報だけを表示させることが出来ます。

何も指定しない場合「phpinfo()」はすべての情報を表示します。

項目 数値 出力情報
INFO_GENERAL 1 configureオプション、読み込んでいるphp.ini、ビルド日時、 サーバ情報等
INFO_CREDITS 2 PHPのクレジット情報
INFO_CONFIGURATION 4 現在ディレクティブ(設定)値
INFO_MODULES 8 ロードされているモジュールとその設定
INFO_ENVIRONMENT 16 「$_ENV」で取得できる環境変数情報
INFO_VARIABLES 32 EGPCS(環境変数・GET・POST・クッキー・サーバー変数)の定義済みの変数情報
INFO_LICENSE 64 PHPのライセンス情報
INFO_ALL -1 上記のすべてを表示

例えば「INFO_GENERAL」の項目だけを表示させたい場合は、下記のように指定します。

phpinfo(INFO_GENERAL)
phpinfo(1)

表示させる項目を複数指定したい場合

表示させる項目を複数指定したい場合は下記のように指定します。

php -r 'phpinfo(項目名 | 項目名);'

例えば「INFO_GENERAL」と「INFO_MODULES」の項目を指定したい場合は、下記のように指定します。

$ php -r 'phpinfo(INFO_GENERAL | INFO_MODULES);'

シェアする