Edited at

Mac+MAMPの開発環境にCakePHP3を導入しようとしてハマった話

CakePHP3使ってみるぞ!ってなり、composerで入れようとした。

$ php composer.phar create-project --prefer-dist cakephp/app appname

するとこんなエラーが。

Your requirements could not be resolved to an installable set of packages.

Problem 1
- cakephp/cakephp 3.0.x-dev requires ext-intl * -> the requested PHP extension intl is missing from your system.
   .
   .
  .

どうも、intlが入っていないらしい。intlを入れればいいのか、と思って調べてみたが、そんな簡単に入るものではないようである。

などと言っていると、この記事に出会った。

MAMPとComposerを使ったCakePHP3.xのローカル開発環境の構築 - Qiita

この記事自体を見ても特に問題は解決しなかったのだが、本文中にこんな一文が。


nts could not be resolved to an installable set of packages.」、「the requested PHP extension intl is missing from your system.」といったエラーメッセージが表示されるかもしれません。その場合はエラーに従って必要なモジュール等をインストールして下さい(ハマりポイントです)。


どうも、mac本体に入っているphpとMAMPのphpがあるようだ。実際に調べてみると、

$ which php

/usr/bin/php

プレインストールされているphpを使ってcomposerを動かしていたようだ。

なので、MAMPのphpを用いてみる。

$ /Applications/MAMP/bin/php/php7.2.10/bin/php composer.phar create-project --prefer-dist cakephp/app appname

実際これでうまくインストールが成功した。