あるPHP講座でphp.iniファイルの作成をするところで沼ってしまったので、備忘録として対処法を書いておきます。
php.ini(PHPの環境設定ができるファイル)をターミナルで作成したい。
動作環境はMacです。
Macに標準搭載されたPHPにはphp.iniファイルが作成されていないため、/etc/php.ini.default
をsudo cpコマンド
でコピーしてやります。
念のためまずは、lsコマンド
でphp.iniファイルが作成されていないことを確認しました。
$ ls /etc/php.ini
ls: /etc/php.ini: No such file or directory
↑No such fileと出ていれば大丈夫です。
/etcフォルダ以下の編集では管理者権限が必要なのでsudoコマンド
を使います。
php.iniファイルが作成できない!
cpコマンド
に2つの引数(コピー元・コピー先)を渡しパスワードを入力して実行したところ
$ sudo cp /etc/php.ini.default /etc/php.ini
Password:
cp: /etc/php.ini.default: No such file or directory
ファイルがありません!?
講座の手順通りにやっているのになぜ?としばらく詰まっていました。
標準のPHPではなくHomeBrewからインストールしたPHPを使っていた
そもそもphp.iniファイルの指定場所を間違えているのでは?と思い、|(パイプ) grepコマンド
で調べてみると・・・
$ php -i | grep php.ini
Configuration File (php.ini) Path => /opt/homebrew/etc/php/8.3
↑なんと/homebrew/にありました。
この辺は詳しく分かりませんが、macOSをMontereyにアプデすると標準搭載のPHPはアンストされるそうです。そのためHomeBrewからPHPをインストールしていたんですね。それをすっかり忘れていました。笑
PHPのインストール方法によってphp.iniの配置場所が変わるため、コピー元の指定には注意が必要です。
php.iniファイルの場所がわかればあとは簡単です。
先ほど調べたファイルの場所を、cpコマンド
の1つ目の引数(コピー元)に渡します。
sudo cp /opt/homebrew/etc/php/8.3/php.ini /etc/php.ini
Password:
ls /etc/php.ini /*念のためlsコマンドで調べてみる*/
/etc/php.ini
これでphp.iniファイルが作成できました!