255
Help us understand the problem. What are the problem?

More than 3 years have passed since last update.

posted at

もういい加減覚えよう。php.iniはどこにあるのか

対象読者

  • 毎回「あれ?php.iniがどこにあるのかってどうやって調べるんだっけ?」と聞いてる人
  • 結局都度ググってる人

php.iniのファイルパスを調べる方法

※ 前提の注意事項

webサービスを動かしている場合、Apacheから見た時の場所と、コンソールで見たときの場所が異なる場合があります。
実際にはwebサービスで動いているPHPは、Apacheで見たときのphp.iniを読み込んでいるので注意が必要です。

(個人的にphpenvを試してる時なんかは、自分のコンソールのバージョンとApache上でPHPのバージョン・php.iniのファイルパスも異なるので注意が必要です)

1. phpinfoを見る

phpinfoを見る方法も2種類あります。

A. phpinfoをwebで見る

ドキュメントルート配下に下記を記載し、web上から確認。

echo phpinfo();

スクリーンショット 2017-08-29 09.12.13.png

B. コンソール上で実行して確認

$ php -r "echo phpinfo();" | grep "php.ini"
Configuration File (php.ini) Path => /home/riki/.phpenv/versions/5.6.10/etc
Loaded Configuration File => /home/riki/.phpenv/versions/5.6.10/etc/php.ini

※ 私はローカルではphpenvを使ってバージョンを変えているので、上のphpinfoをweb上で確認した時とバージョンもphp.iniの場所も異なっています。

2. phpのオプションから探す

A. --iniオプションを使う

$ php --ini
Configuration File (php.ini) Path: /home/riki/.phpenv/versions/5.6.10/etc
Loaded Configuration File:         /home/riki/.phpenv/versions/5.6.10/etc/php.ini
Scan for additional .ini files in: /home/riki/.phpenv/versions/5.6.10/etc/conf.d
Additional .ini files parsed:      /home/riki/.phpenv/versions/5.6.10/etc/conf.d/pyrus.ini,
/home/riki/.phpenv/versions/5.6.10/etc/conf.d/xdebug.ini

B. -iオプションを使う

$ php -i | grep php.ini
Configuration File (php.ini) Path => /home/riki/.phpenv/versions/5.6.10/etc
Loaded Configuration File => /home/riki/.phpenv/versions/5.6.10/etc/php.ini

まとめ

  • 基本はphpinfoを見るのが早い
  • webサービスのときは、web上で確認する方が安全
  • 速さで言えばコンソール上でphpinfoを実行するとかの方が早い
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Sign upLogin
255
Help us understand the problem. What are the problem?