[CakePHP]MacにCakePHPの開発環境を構築
CakePHPの開発環境を構築しよう
PHPが好きです
最近まではFuelPHPが大好きでした
でもなんか、Fuelの人気が落ちてきているみたい、、、
じゃあ他のフレームワークも使ってみよう
ってことで、CakePHPを使って見るべく、Mac上にCakePHPの開発環境を構築します
そもそもCakePHPってなんですか!?
そもそもCakeってなんだよ、ケーキかよ、って方のために説明
CakePHP(ケイクピーエイチピー)とは、PHPで書かれたオープンソースのWebアプリケーションフレームワークである。先行するRuby on Railsの概念の多くを取り入れており、Rails流の高速開発とPHPの機動性を兼ね備えたフレームワークと言われている。MITライセンスの元でフリーで配布されている。
引用元:wikipedia
もうこの説明の通り、PHPで書かれているOSSのWebアプリ開発用のフレームワークです
フルスタックな感じで、これでなんでも作れちゃいます
早速インストール
なにはともあれ、インストールします
インストールはとっても簡単
そう、Composerがあればね!!
ということで、Composerが使用できる環境が構築できていることが前提です
できていない方は先にComposerが使えるようにしてから出直してきてください
Composerをつかってセットアップします
プロジェクトを作成したいディレクトリに移動して、下記コマンドを実行してください
(your-app-nameは、作成するプロジェクトの名称です)
ちょっと時間がかかるので、トイレにでも行って休憩しましょう
$ composer create-project --prefer-dist cakephp/app your-app-name
あれ?エラーがでちゃった
Installing cakephp/app (3.4.2) - Installing cakephp/app (3.4.2) Loading from cache Created project in cake-test Loading composer repositories with package information Updating dependencies (including require-dev) Your requirements could not be resolved to an installable set of packages. Problem 1 - cakephp/cakephp 3.4.7 requires ext-intl * -> the requested PHP extension intl is missing from your system. - cakephp/cakephp 3.4.6 requires ext-intl * -> the requested PHP extension intl is missing from your system. - cakephp/cakephp 3.4.5 requires ext-intl * -> the requested PHP extension intl is missing from your system. - cakephp/cakephp 3.4.4 requires ext-intl * -> the requested PHP extension intl is missing from your system. - cakephp/cakephp 3.4.3 requires ext-intl * -> the requested PHP extension intl is missing from your system. - cakephp/cakephp 3.4.2 requires lib-icu >=4.8 -> the requested linked library icu has the wrong version installed or is missing from your system, make sure to have the extension providing it. - cakephp/cakephp 3.4.1 requires lib-icu >=4.8 -> the requested linked library icu has the wrong version installed or is missing from your system, make sure to have the extension providing it. - cakephp/cakephp 3.4.0 requires lib-icu >=4.8 -> the requested linked library icu has the wrong version installed or is missing from your system, make sure to have the extension providing it. - Installation request for cakephp/cakephp 3.4.* -> satisfiable by cakephp/cakephp[3.4.0, 3.4.1, 3.4.2, 3.4.3, 3.4.4, 3.4.5, 3.4.6, 3.4.7]. To enable extensions, verify that they are enabled in those .ini files: - /usr/local/etc/php/5.6/php.ini - /usr/local/etc/php/5.6/conf.d/ext-mcrypt.ini You can also run `php --ini` inside terminal to see which files are used by PHP in CLI mode.
intlっていうextensionがないからダメよって言われてそう
Homebrewを使ってインストールしてみます
$ brew search intl $ brew install php56-intl
php56にしてますが、これはMac上のPHPバージョンが「PHP 5.6」だからです
自分の環境に合わせて変えてみる必要がありますので注意です
intlがインストールできたら、再度CakePHPのプロジェクトを作成してみます
$ composer create-project --prefer-dist cakephp/app your-app-name Installing cakephp/app (3.4.2) - Installing cakephp/app (3.4.2) Loading from cache Created project in your-app-name Loading composer repositories with package information Updating dependencies (including require-dev) ・・・・・・・・・・・ Writing lock file Generating autoload files > Cake\Composer\Installer\PluginInstaller::postAutoloadDump > App\Console\Installer::postInstall Created `config/app.php` file
いけたっぽいです
途中でパーミッションなんちゃらって聞かれるけど「Y」にしておけば間違いないです
動作確認
さて、動作確認してみましょう
PHPのビルトインサーバで確認してみます
$ cd your-app-name/webroot $ php -S localhost:3000 Document root is /Users/user/Projects/your-app-name Press Ctrl-C to quit.
ブラウザで「http://localhost:3000」にアクセスしてみましょう
オー!!ちゃんと動いてる!!!
今日はここまで!!!