[Mac] PHPのバージョンが異なる問題と解決方法 [HighSierra]

この記事は約5分で読めます。
スポンサーリンク

ローカル鯖(Apache,PHP,MySQLなど)として使っていたCF-R6(松下のノートPC)が古ゐし熱ゐし遅ゐンで、

CF-R6

使用頻度の低いMacBook Air(13-inch Mid 2011)を使うコトにする。

MBA(MacBookAir,13型,2011 Mid)

Linux(Ubuntu)からmacOSへの移行なンで、環境ヅクリがメティアクティア面倒杉田。

構築手順は以下に書いた。

関連:Macでサーバー(Apache,PHP,MySQL,WordPress)を作る

# ゑ?MAMPでイッパツ?だがシナイ(半島)!

# MAMPとは「Macintosh + Apache + MySQL + PHP」であるがWindows版もある。

関連:MAMP

MacBook Air(13-inch Mid 2011)は既にアッチ系の社長♪に切り捨てられているので、10.14 Mojave(2018年9月)や10.15 Catalina(2019年秋予定)は入らヘン!

ツマリ、Mac(10.13 High Sierra,髙死鰓)止まりである。

High Sierra(髙死鰓)10.13.6

関連:MacBook Air(13型,Mid 2011)は対象外!macOS 10.14 Mojave

Mojave(モハベ)って何かヅィヴァク系の名前ッぽゐし、髙死鰓のようにフキツな漢字で表せナゐから、その点でHigh Sierraが適しているし、ソムォソムォMacはほとんど使わないので何ら問題はナゐ(笑)。

Core i7(1.8GHz,2コア4スレッド)でRAMは4GB、ストレージはSSDなので、ローカル鯖としてのスペックは問題ない。

2677M_MacBookAir_13型

で、PHPのバージョンが異なるコトに気付く。

# PHPのバージョン確認
# php -v

実際にウゴいているのは 7.1.23 で、php -vだと 7.3.7 となっている。

PHP_on_Mac

7.1.23 はMacのデフォルトのヤツで、7.3.7 はHomebrew(macOS用のパッケージマネージャー)で入れたヤツかはシラン(SILANE)。

# brew install php@7.3

鯖を再起動しても 7.1.23 のムァムァ。

ムァ、5.xだったらアレだけど(6.xは破棄となり欠番)、7.xだったら大して変わらンと思うから放置wwwww

関連:【Homebrew】PHPの設定に注意!Homebrew/phpの廃止 (本件に近いけどチャウ)

httpd.confのLoadModuleの指定を変えるとHomebrewのPHPとなった。

# PHP7 of Mac
#LoadModule php7_module libexec/apache2/libphp7.so

# PHP7 of Homebrew
LoadModule php7_module /usr/local/opt/php/lib/httpd/modules/libphp7.so

Macの方をコメントアウト(#)し、Homebrewの方を指定し、Apacheを再起動すると、HomebrewのPHPとなる。

再起動
sudo apachectl restart

PHPのアップデート(Mac)

brew upgrade php

でHomebrewのPHPのアップデートが可能で、2019年8月時点では7.3.8であった。

なお、PHPをアップデートすると、php.iniが変わるため、memory_limitやupload_max_filesizeが初期値に戻ってしまうので、再設定が必要となる。

phpMyAdminの config.default.php の設定も必要(以下記事最下部)。

関連:MacのPHPをv7.4.5にアップデートしたらソコからゴツ面倒なコトになッた

また、PHPをアップデートするとMySQLが動かなくなることがあるので、brew upgrade mysqlでアップグレードする必要がある。

関連:Macでサーバー(Apache,PHP,MySQL,phpMyAdmin,WordPress)を作る

MacのPHPではできなかったが、HomebrewのPHPではmecabやcabochaが有効にできた(phpinfoで出る)ので、イロイロとヤッてみようと思う。

関連:PHP から CaboCha を使う

私はMAMPではナゐが、以下のサイトが参考になった。

関連:CaboCha をインストールして MAMP の PHP で使う

関連:MAMPのPHPにphp-mecabを導入する

関連:macOS に PHP の `php-mecab` 拡張モジュールをビルド&インストール

上記にも当方の環境との不一致や誤りがあるので、各サイトの情報を組み合わせながら再試行するコトになるがモノゴツ面倒杉流ワ、ドァヴォ!!

# –with-php-configのハイフンは2本

生成されたmecab.soとcabocha.soは以下に入っている。

/usr/local/Cellar/php/7.3.8/pecl/20180731/

mecab -v
cabocha -v

でバージョンが表示される。

PHPで使うためには、php.iniのDynamic Extensionsで読み込みを指定する必要がある。

extension=mecab.so
extension=cabocha.so

php.iniは

/usr/local/etc/php/7.3/php.ini (Homebrew)
/private/etc/php.ini (Mac)

の2つがあるので、使っている方に書き加える。

Apacheを再起動。

PHP内で

$cabocha = cabocha_new() ;
$tree = cabocha_parse($cabocha,”アヤしゐ「專門妖語」を使ッて解説スル!”) ;
print_r($tree) ;

と書ゐて実行すると、ソレラシゐモノがツラツラと出てクル!

グァ、当方の「專門妖語」は特殊言語なので、正常には判別不可能な模様wwwww

関連:古いMacにXcodeをインストールする方法とHomebrewでのアップデート

関連:[Mac] Apacheを自動起動及び停止する方法 [launchd]

関連:Macでサーバー(Apache,PHP,MySQL,WordPress)を作る

関連:Ubuntu 18.04.2 LTSの32ビット版

タイトルとURLをコピーしました