Help us understand the problem. What is going on with this article?

Laravelの環境構築からちょっと動かすまでの話

More than 3 years have passed since last update.

対象者

PHP初学習者(自分もはじめて)
とりあえずさくっと試したいよって人

環境

項目 バージョン
OS macOS Sierra ver.10.12.5
php 5.6

なんでLaravel?

とりあえずPHPのフレームワークを使う必要に迫られたため,人気のPHPフレームワーク比較!おすすめの15選まとめましたを参考にした.

最初はPhalconを使おうと試みたが,あまりに自由度が高すぎて何を書いていいのか逆にわからなかったり(個人的な感想),ローカルでの実行環境構築が面倒(apacheとかnginxをごねごね)だったりと,チームとかで扱うのは大変そうだったから断念..

参考記事によるとLaravelがアツいとかいていたため,ちょっとGoogleトレンドで調べてみた.

Screenshot 2017-06-11 17.41.12.png

まじでアツかった
ミーハー精神でこのフレームワークを使うことにした.
それに日本語のドキュメントも充実してるのも助かりますね.

導入手順

前置き

自分はanyenvでのphpenvを使ってphpのバージョンを管理してます.
これからの手順には別に必要ないですが,導入したい方はanyenvでモダンな開発環境構築。PHP,NodeJS,Ruby,Perl,Pythonを参照するといいと思います.(自分も参考にしました.ありがとうございました.)

Composerの入手

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を用いてインストールします.

Laraval入手
$ 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に記述してあります.

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/を確認してみましょう.

お疲れ様でした.

yahoo-japan-corp
Yahoo! JAPAN を運営しています。
https://www.yahoo.co.jp
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした