【PHP/Laravel入門】基本的な使い方とサンプル集

PHPの人気フレームワーク「Laravel」の基本的な使い方とサンプル集についてまとめました。

【Laravelとは】環境構築

Laravelとは、PHPで最も人気のあるフレームワークの1つです。

Laravel5.6のシステム要件(2018年7月現在の最新版)
PHPバージョン 7.1.3以上
PHP拡張 「OpenSSL」「PDO」「Mbstrin」「Tokenizer」「XML」「Ctype」「JSON」
【人気比較】Laravel、Symfony、CakePHP、Codeigniter、CFuelPHP
PHPの人気フレームワークLaravel(ララベル)、Symfony(シンフォニー)、CakePHP(ケイクピーエイチピー)、Codeigniter(コードイグナイター)、CFuelPHP(ヒューエルピーエイチピー)の人気を比較してみました...

環境構築

LaravelのインストールをXAMPPで行います。
① 「xampp-control.exe」をタブルクリックし、XAMPPのコントロールパネルを開きます。

② コントロールパネルでApacheを起動します。

③ [Shell]をクリックして以下のコマンドを実行します。(Composerのインストール)

php -r "readfile('https://getcomposer.org/installer');" | php

④ 続いて以下のコマンドを実行します。(Laravelのインストール)

php composer.phar create-project laravel/laravel bbs --prefer-dist

※このコマンドでは、bbsプロジェクトを作成

⑤ これでインストール完了です。(Laravelがインストールされたbbsプロジェクトを作成)
下記コマンドを順に実行してLaravelのバージョンが表示させたらインストール成功です。

cd example
php artisan --version

Laravel Framework 6.16.0
【XAMPP】Laravelのインストール
XAMPPでPHPの人気フレームワーク「Laravel」をインストールする方法についてまとめました。
【XAMPP】Laravelのバージョン確認
XAMPPでPHPの人気フレームワーク「Laravel」のバージョンを確認する方法についてまとめました。

Hello World

下記コマンドを実行します。(Laravelの起動)

php artisan serve

ブラウザで「http://127.0.0.1:8000」にアクセスし、Laravelのページが表示されたら起動成功です。

【PHP/Laravel】Hello World(Laravelの起動)
LaravelでHello Worldする方法(Laravelの起動)についてまとめました。

【artisan】artisanコマンドの使い方

artisanとは、Laravelのコマンドラインインターフェイスです。
Laravelでアプリケーションを作成する上で便利なコマンドを提供しています。

主なコマンド 説明
php artisan list コマンドリスト一覧の表示
php artisan make:controller -h ヘルプの表示(コマンド毎に-hを付加)
php artisan route:list 設定したrouteの確認
php artisan make:model Admin モデル雛形の作成
php artisan make:migration create_admins_table –create=admins マイグレーションの作成。テーブルも作成することが多いので–create=オプションをよく使用。ファイル名は生成日時(2018_6_31_003428_create_admins_table.phpなど)となる。
php artisan migrate マイグレーションの実行。
php artisan reset マイグレーションの再実行。
php artisan migrate:refresh マイグレーションの再実行。
php artisan make:seeder AdminTableSeeder Seederの作成。
php artisan db:seed Seederを実行。
php artisan make:controller HogeController コントローラーの作成。
php artisan optimize 最適化
php artisan serve ビルトインサーバーの起動。
php artisan tinker 対話コンソールの起動。
【PHP/Laravel】artisanコマンドの使い方
Laravelにおいて、artisanコマンドを使用する方法についてまとめました。

【ディレクトリ構成】Laravelプロジェクト

Laravelプロジェクトを作成すると、以下のようなディレクトリを構成します。

ディレクトリ 説明
app Model、Controllerなど
bootstrap laravelフレームワークの起動コード
config 設定ファイル
database DB関連(マイグレーションファイルなど)
public Webサーバのドキュメントルート
resources Viewや言語変換用ファイルなど
routes ルーティング用ファイル
storage フレームワークが使用するファイル
tests テストコード
vendor Composerでインストールしたライブラリ

【MVCモデル】3つの役割とシナリオ

MVCモデルとはWebアプリケーションを「Model」「View」「Controller」に分割してコーディングを行うモデルです。

項目 説明
Model アプリケーションのデータ、ビジネスルール、ロジック、関数を定義。
View Model内のデータを参照してグラフや図などの任意の情報表現する(入出力や表示の処理)
Controller ユーザーの入力を受け取り、ModelとViewへの命令に変換して制御する
シナリオの流れ
1 ユーザがViewに入力する。
2 Viewがコントローラに入力情報を渡す。
3 Controllerが入力情報に応じてモデルのメソッドを呼びだす(データの書き換えが発生することも)。
4 Modelが呼び出されたメソッドを処理する。
5 ControllerがViewに表示命令を出す。
6 Viewは関連するデータをModelから参照する。(Modelは参照されたデータをViewにわたす)
7 Viewがユーザーにデータを表示する。
【MVCモデルとは】Model、Controller、Viewの役割・違い
MVCモデルとは?Model、Controller、Viewの役割・違いについてまとめました。

【用語】よく使われる言葉の意味

用語 説明
マイグレーション 移行、移転、移住、移動、乗換などの意味。 ITではソフトウェアやシステム、データなどを別の環境に移転したり、新しい環境に切り替えたりすることを意味する。Laravelでは、データベースのテーブル作成や編集などを管理するために使用される。
マイグレーションファイル データベースのテーブル作成や編集などを管理するためのファイルで、テーブルの設計書のようなもの。
シーディング シーディングはテストデータやマスタデータなどのアプリケーション起動時に必要なレコードをコマンドで登録する仕組み。Larabelでは、「①シーダーファイルの作成」「②シーディングの実行」の順で行う。
ルーティング クライアントからのリクエストを受け付け、その内容によって処理を振り分けることです。ルーティング情報はroutes/web.phpファイルに記述します。
Controller ルーティングされてきたリクエストを受け取り、レスポンスを作成する(レスポンスがHTMLならViewに処理を依頼)。app/Http/Controllersディレクトリでコントローラを作成していく。
Blade ビューを作成するためのテンプレートエンジン。{{ $variables }}とすることで、コントローラから受け取った値を画面に出力(変数展開)できます。また@foreach($array as $elem)や@if($bool)と記述することで制御構文を使用できます。その場合、制御構文の終端は@endforeach、@endifと記述します。
ビューの継承 共通で利用するテンプレートの作成を行う。ビューの継承を利用すると効率的にViewを作成できます。親ビューはlayout.blade.phpに共通となる要素のみ記述します。
Eloquent ORM Laravelでデータ操作をするための実装です。モデルはテーブルにマッピングされており、テーブルの登録や取得更新などの操作を持っています。

【応用例】掲示板の作成

【PHP/Larabel】掲示板サイトの作成【サンプル】
PHPで掲示板を作成する方法についてサンプルコード付きで紹介します。
【PHP入門】基礎文法とサンプルコード集
PHPの基本文法やサンプルプログラムを入門者向けに解説しています。
PHP
西住工房

コメント

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