対象者
PHP初学習者(自分もはじめて)
とりあえずさくっと試したいよって人
環境
項目 | バージョン |
---|---|
OS | macOS Sierra ver.10.12.5 |
php | 5.6 |
なんでLaravel?
とりあえずPHPのフレームワークを使う必要に迫られたため,人気のPHPフレームワーク比較!おすすめの15選まとめましたを参考にした.
最初はPhalconを使おうと試みたが,あまりに自由度が高すぎて何を書いていいのか逆にわからなかったり(個人的な感想),ローカルでの実行環境構築が面倒(apacheとかnginxをごねごね)だったりと,チームとかで扱うのは大変そうだったから断念..
参考記事によるとLaravelがアツいとかいていたため,ちょっとGoogleトレンドで調べてみた.
まじでアツかった
ミーハー精神でこのフレームワークを使うことにした.
それに日本語のドキュメントも充実してるのも助かりますね.
導入手順
前置き
自分はanyenvでのphpenvを使ってphpのバージョンを管理してます.
これからの手順には別に必要ないですが,導入したい方はanyenvでモダンな開発環境構築。PHP,NodeJS,Ruby,Perl,Pythonを参照するといいと思います.(自分も参考にしました.ありがとうございました.)
Composerの入手
$ curl -sS https://getcomposer.org/installer | php
All settings correct for using Composer
Downloading...
Composer (version 1.4.2) successfully installed to: /Users/shu920921/composer.phar
Use it: php composer.phar
$ mv composer.phar /usr/local/bin/composer
$ which composer
/usr/local/bin/composer
$ composer -V
Composer version 1.4.2 2017-05-17 08:17:52
これでComposerを使えるようになりました.
Laravalの入手
先程入手したComposer
を用いてインストールします.
$ composer global require "laravel/installer"
Changed current directory to /Users/shu920921/.config/composer
Using version ^1.3 for laravel/installer
./composer.json has been created
Loading composer repositories with package information
Updating dependencies (including require-dev)
Package operations: 10 installs, 0 updates, 0 removals
- Installing symfony/process (v3.3.2): Loading from cache
- Installing psr/log (1.0.2): Loading from cache
- Installing symfony/debug (v3.3.2): Loading from cache
- Installing symfony/polyfill-mbstring (v1.4.0): Loading from cache
- Installing symfony/console (v3.3.2): Loading from cache
- Installing guzzlehttp/promises (v1.3.1): Loading from cache
- Installing psr/http-message (1.0.1): Loading from cache
- Installing guzzlehttp/psr7 (1.4.2): Loading from cache
- Installing guzzlehttp/guzzle (6.2.3): Loading from cache
- Installing laravel/installer (v1.3.6): Loading from cache
symfony/console suggests installing symfony/event-dispatcher ()
symfony/console suggests installing symfony/filesystem ()
Writing lock file
Generating autoload files
これで終わりです.
ちょっと動かす
公式の簡単な方のチュートリアルをやってみましょう.
詳しくやりたい人は公式ページを見てもらうとして,今は構築した環境できちんとLaravelプロジェクトが動くのか確かめたいので完成版をgitからcloneしてきます.
$ git clone https://github.com/laravel/quickstart-basic quickstart quickstart
$ cd quickstart
$ php artisan --version
Laravel Framework version 5.2.20
$ composer install
次にDBのマイグレーションを行うのですが,ここで1点注意です.
接続のための設定ファイルがquickstart/.env
に記述してあります.
APP_ENV=local
APP_DEBUG=true
APP_KEY=b809vCwvtawRbsG0BmP1tWgnlXQypSKf
APP_URL=http://localhost
## ここを適宜変更してください!
DB_HOST=127.0.0.1
DB_DATABASE=homestead
DB_USERNAME=homestead
DB_PASSWORD=secret
##
CACHE_DRIVER=file
SESSION_DRIVER=file
QUEUE_DRIVER=sync
REDIS_HOST=127.0.0.1
REDIS_PASSWORD=null
REDIS_PORT=6379
MAIL_DRIVER=smtp
MAIL_HOST=mailtrap.io
MAIL_PORT=2525
MAIL_USERNAME=null
MAIL_PASSWORD=null
MAIL_ENCRYPTION=null
変更が完了したら
$ php artisan migrate
Migration table created successfully.
Migrated: 2014_10_12_000000_create_users_table
Migrated: 2014_10_12_100000_create_password_resets_table
Migrated: 2015_10_27_141258_create_tasks_table
これで指定したDBに仕様するテーブルが作られました.
あとは実行するだけ
$ php artisan serve
Laravel development server started on http://localhost:8000/
Laravelだとこのコマンドだけで実行することができるのが便利だと思います!
http://localhost:8000/を確認してみましょう.
お疲れ様でした.