php laravel tutorial
このLaravelチュートリアルでは、PHP Laravelフレームワークを紹介し、Laravelとは何か、インストール方法、MVCアーキテクチャ、およびさまざまなコンポーネントについて説明します。
Laravelフレームワーク は PHP用の無料のオープンソースWebフレームワーク。 複雑なWebアプリケーションの開発に使用されます。それはに基づいています Model-View-Controller(MVC) 建築デザインパターン。
Laravelフレームワークの歴史、機能、利点、アーキテクチャ、インストール、およびコンポーネントについて学習します。
学習内容:
Laravelチュートリアルのリスト
チュートリアル#1: 初心者のためのPHPLaravelチュートリアル (このチュートリアル)
チュートリアル#2: Laravelデータベース、移行、Eloquent ORM、Tinker
チュートリアル#3: Laravelフォームと検証ルールと例
チュートリアル#4: Laravelセッション、ファイルのアップロード/ダウンロードおよび権限
チュートリアル#5: LaravelコレクションとLaravelForgeチュートリアル
チュートリアル#6: Laravelインタビューの質問と回答
Laravelとは
歴史:
Laravelフレームワークはによって開発されました テイラーオトウェル そしてその年に一般に公開されました 2011 。
次の表は、Laravelのさまざまなバージョンを示しています。
バージョン | リリース日 | PHPバージョンのサポート |
---|---|---|
5.2 | 2015年12月21日 | 5.5.9から7.1。*の間 |
1.0 | 2011年6月 | ------------------------------------------- |
2.0 | 2011年9月 | ------------------------------------------- |
3.0 | 2012年2月22日 | ------------------------------------------- |
4.0 4.0 | 2013年5月28日 | 最小5.3.0 |
5.0 | 2015年2月4日 | 最小5.4.0 |
5.1 | 2015年6月9日 | 最小5.5.9 |
5.3 | 2016年8月23日 | 5.6.4〜7.1。* |
5.4 | 2017年1月24日 | 5.6.4以上 |
5.5 | 2017年8月30日 | 7.0.0以上 |
5.6 | 2018年2月7日 | 7.1.3以上 |
5.7 | 2018年9月4日 | 7.1.3以上 |
5.8 | 2019年2月26日 | 7.1.3以上 |
6.x | 2019年9月3日 | 7.2.0以降 |
7.x | 2020年3月3日 | 7.2.5以上 |
8.x | Laravel 8はまだリリースされていません(2020年) | 7.3.0以降 |
注意: これで Laravelチュートリアル 、使用しました Laravelバージョン7 すべての例で。
人気:
Laravel、Symfony、Codeigniter、Yii、CakePHP、PHP用のZendフレームワークなど、業界で利用可能なフレームワークはたくさんあります。
それで、あなたはどう思いますか、どれが 最も人気のあるPHPフレームワーク? 答えは Laravel 。
次のスクリーンショット Googleトレンド は、さまざまなPHPフレームワークの人気の分析を示しています。
(画像 ソース )
利点:
次のリストは、Laravelフレームワークのいくつかの利点を示しています。
- MVCアーキテクチャデザインパターンに従います
- 無料でオープンソース
- 習得が容易
- 優れたドキュメントサポート
- 統合が簡単
- 高性能と効率
- 高レベルのセキュリティ
特徴:
Laravelには豊富な機能があります。 これらは次のとおりです。
- モジュール性: Laravelには、開発者がレスポンシブでモジュール式のPHPWebアプリケーションを構築するのに役立つ多くの組み込みライブラリとモジュールがあります。この機能により、開発もスピードアップします。
- レイジーコレクション: 最小限のメモリ使用量で大量のデータを処理します。
- 雄弁なORM : ORMは オブジェクト関係マッピング 。 LaravelにはORMが組み込まれています 雄弁 データベース関連の操作を処理します。
- 職人: 職人は コマンドラインインターフェイス Laravelで使用されます。
- ブレードテンプレート: Laravelには 刃、 これは、データを表示するための一意のテンプレートを作成します。
- ユニットテスト: テストケースは、Laravelでユニットテストを実行するために使用できます。
- メールサポート: Laravelにはと呼ばれる組み込みクラスがあります 郵便物、 これはメールの送信に役立ちます。
- 認証: 認証は、システムのユーザーを識別するために使用されます。これは通常、ユーザーのユーザー名とパスワードを識別することによって実現されます。
LaravelのMVCアーキテクチャ
Laravelフレームワークは次のとおりです MVCアーキテクチャ 。 MVCは、Webアプリケーションの開発を高速化するのに役立つアーキテクチャデザインパターンです。 MVC を意味する Model-View-Controller 。
- モデル(M) –モデルは、Webアプリケーションによって使用されるデータを処理します。
- ビュー(V) –ビューは、ユーザーにデータを表示するのに役立ちます。
- コントローラー(C) –コントローラーはモデルと対話して、ビューのデータを作成します。
次のスクリーンショットは、モデル、ビュー、およびコントローラー間の相互作用を示しています。
(画像 ソース )
Laravelの前提条件
このチュートリアルをさらに進める前に、次の概念に精通している必要があります。
- HTMLとCSS
- コアPHPとアドバンストPHP
- PHPとMySQLを使用したWebアプリケーション開発
- MVCアーキテクチャ(このチュートリアルでは、MVCアーキテクチャのいくつかの基本についてすでに説明しました)
Windows用のLaravelFramework7をインストールする
Laravel 7をインストールするための前提条件:
Laravel Frameworkをインストールする前に、以下のプログラムをコンピューターにインストールしてください。 PHPバージョン7.2.5 はPHPの最小互換バージョンです Laravelバージョン7 。
- ApacheなどのWebサーバー
- PHPバージョン7.2.5以降のバージョン
- PHP拡張機能 *
- BCMathPHP拡張機能
- CtypePHP拡張機能
- FileinfoPHP拡張
- JSONPHP拡張機能
- MbstringPHP拡張機能
- OpenSSLPHP拡張機能
- PDOPHP拡張機能
- TokenizerPHP拡張機能
- XMLPHP拡張機能
- MySQL
- Composer(ComposerをダウンロードしてインストールするためのURLについては、次のトピックを参照してください)
*注意: 上記のPHP拡張機能は、システムにプリインストールされている場合があります。
作曲
作曲家は PHPの依存関係マネージャー 。 Laravelは 作曲 その依存関係を管理します。
Laravelをインストールする前に、composerをインストールする必要があります。コンポーザーをインストールしていない場合は、以下にアクセスしてください URL コンポーザーをダウンロードしてインストールします。
コマンドプロンプトで次のコマンドを実行して、コンピューターにコンポーザーが正常にインストールされているかどうかを確認します。
Androidでjsonファイルを開く方法
composer
コンポーザーを正常にインストールすると、以下のような画面が表示されます。また、インストールされているコンポーザーのバージョンも表示されます。
Laravelインストーラーをダウンロードする
コマンドプロンプトで次のコマンドを実行して、 Laravelのインストール 作曲家を使用してコンピュータ上で。
composer global require laravel/installer
最初のLaravelPHPプロジェクトの作成
コマンドプロンプトで次のコマンドを実行して、新しいコマンドを作成します LaravelPHPプロジェクト 名前付き laravel-チュートリアル (任意の名前を使用できます)作曲家を使用します。現在のディレクトリにLaravelプロジェクトが作成されます。
composer create-project --prefer-dist laravel/laravel laravel-tutorial
ローカルホストで最初のLaravelPHPプロジェクトを実行する
次のコマンドを実行して、コマンドプロンプトでLaravelPHPプロジェクトフォルダーに移動します。
cd laravel-tutorial
次に、コマンドプロンプトで次のコマンドを実行して、Laravel開発サーバーを起動します。
php artisan serve
次のスクリーンショットは、上記のコマンドの出力を示しています。
上記をコピー URL:http://127.0.0.1:8000 Webブラウザで開きます。
Laravelプロジェクトを正常に実行すると、次のような画面が表示されます。
おめでとう!これで、最初のLaravelプロジェクトが正常に実行されました。
LaravelPHPプロジェクトの構造
プロジェクト構造は、ディレクトリ、サブディレクトリ、およびファイルで構成されています。
注意: ディレクトリは、 フォルダ 。
からプロジェクトを開きます ファイルエクスプローラー Laravelプロジェクトのルートディレクトリ構造を確認します。以下のような画面が表示されます。
次のリストは、典型的なLaravelプロジェクトのいくつかの重要なディレクトリ、サブディレクトリ、およびファイルについて説明しています。
- アプリディレクトリ: このディレクトリは、ルートで最も重要なディレクトリの1つです。 appディレクトリには、Webアプリケーションのソースコードが含まれています。これには、次のサブディレクトリと User.php ファイル。
- コンソールディレクトリ: このディレクトリには 職人のコマンド Laravelに必要です。
- 例外 ディレクトリ: このディレクトリには 例外ハンドラ 。
- Httpディレクトリ: このディレクトリには、次のサブディレクトリが含まれています コントローラー そして ミドルウェア。
- プロバイダー ディレクトリ: このディレクトリには、 サービスプロバイダー 。
- User.phpファイル: これがデフォルトです モデル Laravelから提供されました。
- ブートストラップ ディレクトリ: このディレクトリには、LaravelPHPアプリケーションのブートストラップに関連するファイルが含まれています。
- 設定 ディレクトリ: このディレクトリにはさまざまなものが含まれています 構成ファイル LaravelPHPアプリケーションに必要です。
- データベース ディレクトリ: このディレクトリには、データベースに関連するファイルが含まれています。これには、次のサブディレクトリとが含まれます。 gitignore ファイル。
- 工場ディレクトリ: このディレクトリは多くのデータレコードを生成します。
- 移行ディレクトリ: このディレクトリには、に関連するファイルが含まれています データベースの移行 。
- 種子 ディレクトリ: このディレクトリには クラス ユニットテストデータベースに使用されます。
- 公衆 ディレクトリ: このディレクトリには、LaravelPHPアプリケーションの初期化に役立つファイルが含まれています。
- リソース ディレクトリ: このディレクトリには、HTMLファイル、CSSファイル、JavaScriptファイル、およびブレードテンプレートが含まれています。これには、次のサブディレクトリが含まれます。
- jsディレクトリ: このディレクトリには、に関連するファイルが含まれています JavaScript 。
- lang ディレクトリ: このディレクトリには、 ローカリゼーションと内部化 。
- Saas ディレクトリ: このディレクトリには、次のようなファイルが含まれています SCSS ファイル。
- ビュー ディレクトリ: このディレクトリには HTMLファイルまたはテンプレート これは、ユーザーにデータを表示するのに役立ちます。
- ルート ディレクトリ: このディレクトリには、 ルート定義 LaravelPHPアプリケーション用。
- ストレージ ディレクトリ: このディレクトリには キャッシュファイル、 セッション ファイルなど 。
- テストディレクトリ: このディレクトリには テストファイル ユニットテストファイルなど。
- ベンダー ディレクトリ: このディレクトリには、 Composer依存関係パッケージ 。
- .envファイル: このファイルには 環境変数 。
- composer.jsonファイル: このファイルは 構成ファイル 依存関係を指定します。
- package.jsonファイル: このファイルはに似ています composer.json ファイルですが、 フロントエンド 。
- そしてさらにいくつかのファイル
Laravelルートの紹介
ルーティングは要求を受け入れ、それを関連するコントローラー機能にリダイレクトします。
Laravelフレームワークには2つの主要なルートファイルがあります。
- ルート/web.php: このファイルは登録に使用されます Webルート 。
- ルート/api.php: このファイルは登録に使用されます APIルート 。
次のコードセグメントは、Laravelによって登録されたデフォルトのWebルートを示しています。 ようこそ ページ。
Route::get('/', function () { return view('welcome'); });
上記のルートでは、 ルート 関数を定義するために使用されるクラスです 取得する() 。関数 取得する() パラメータ「 / 」は、LaravelアプリケーションのルートURLを示します。
次のスクリーンショットは、上記のルートの出力を示しています。
次のコマンドをコマンドプロンプトで実行して、登録済みルートの完全なリストを取得できます。
php artisan route:list
ルートの作成
ステップ1: 次のコードセグメントをに追加します ルート/web.php 新しいルートを登録するためのファイル。
Route::get('/example', function () { return 'Hello World!!!'; });
ステップ2: 訪問 URL:http://127.0.0.1:8000 / example 出力を確認します。
ステップ3 :次のスクリーンショットは出力を示しています。
ルーティングパラメータ
Laravelフレームワークは2種類のルートパラメーターを使用します。
#1)必要なパラメータ
必要なパラメーターは、以下に示すようにURLに渡されるパラメーターです。
Route::get('user/{name}', function ($name='Paul') { return $name; });
#2)オプションのパラメータ
場所 ' ? 」をルーターパラメータの後に追加します オプション 以下に示すように。
Route::get('user/{name?}', function ($name='Paul') { return $name; });
名前付きルート
次のルートでは、 レポートコントローラー 関数を呼び出します showReport パラメータを使用して 報告する 。
Route::get(student/report, 'ReportController@showReport')->name(report);
Laravelコントローラー
MVCアーキテクチャでは、文字「C」は コントローラ 。コントローラーは、必要に応じて関連するモデルと通信し、ビューをロードしてユーザーにコンテンツを表示します。
すべてのコントローラーはに保存されます app / Http / Controllers ディレクトリ。
コントローラの作成
コマンドプロンプトで次のコマンドを実行して、という名前のコントローラーを作成します UserContoller 。
php artisan make:controller UserController
このコマンドは、という名前のファイルを作成します UserController.php の中に app / Http / Controllers ディレクトリ。デフォルトでは、 Controller.php ファイルはLaravelフレームワークに含まれています。
ルートからのコントローラーの呼び出し
次の構文を使用して、ルートからコントローラーを呼び出すことができます。
Route::get(‘base URI’,’controller@method’);
例を見てみましょう。
ステップ1: 次のコードセグメントをに追加します ルート/web.php 新しいルートを登録するためのファイル。
Route::get('/assessment', 'AssessmentController@index');
ステップ2: コマンドプロンプトで次のコマンドを実行して、という名前のコントローラーを作成します AssessmentController 。
php artisan make:controller AssessmentController
このコマンドは、という名前のファイルを作成します AssessementController.php の中に app / Http / Controllers ディレクトリ。
ステップ3: を作成します インデックス の機能 AssessementController 以下に示すように。
ステップ4: 名前の付いたビューを作成します Assessment.php の中に リソース/ビュー ディレクトリを作成し、次のコードを保存します。
ステップ2: 次のコードセグメントをに追加します ルート/web.php 新しいルートを登録するためのファイル。
Route::get('/index', function () { return view('index'); });
ステップ3: 訪問 URL:http://127.0.0.1:8000 / index 出力を確認します。
ステップ4: 次のスクリーンショットは出力を示しています。

ビューへのデータの受け渡し
データをビューに渡す方法を確認する例を見てみましょう。
ステップ1: 名前の付いたビューを作成します user.php の中に リソース/ビュー ディレクトリを作成し、次のコードを保存します。
ステップ2: 次のコードセグメントをに追加します ルート/web.php 新しいルートを登録するためのファイル。
Route::get('/user', function () { return view('user', ('name' => 'John')); });
ステップ3: 訪問 URL:http://127.0.0.1:8000 / user 出力を確認します。
ステップ4: 次のスクリーンショットは出力を示しています。

ブレードテンプレートの概要
ブレードテンプレートは .blade.php 拡張。に保存されているブレードテンプレート リソース/ビュー ディレクトリ。
ブレードテンプレートの使用
- 使用法1:変数値
ブレードテンプレートでは、 {{$変数}} の代わりに変数の値を出力するには しない 書く必要があります PHPタグ または 捨てた キーワード。
例を見てみましょう!
無料のオンラインyoutubeからmp4へのコンバーター
以前に、 user.php 次のコードを使用してファイルします。
ステップ1: ファイルの名前を変更します user.php に user.blade.php (の中に リソース/ビュー ディレクトリ)、以下に示すように既存のコードを変更します。
My name is {{ $name }}
ステップ2: 訪問 URL:http://127.0.0.1:8000 / user 。
以下に示すように、前の例と同じ出力が得られます。

- 使用法2:三項演算子
ブレードテンプレートでは、 {{$ variableまたは ‘default_value’}} の代わりに $ variable:?default_value? ?> 三項演算子を記述します。
結論
ザ・ Laravel フレームワーク は、人気のある無料のオープンソースMVCベースのPHP用Webフレームワークです。複雑なPHPWebアプリケーションの開発に使用されます。 Laravelでは、登録されたルートがリクエストをコントローラーの関連機能に転送します。次に、コントローラーは必要に応じて関連するモデルと通信し、ビューをロードしてユーザーのコンテンツを表示します。
ミドルウェアは、要求と応答の間のブリッジとして機能します。 Laravelは、Bladeと呼ばれる特別な概念を使用して、データを表示するための独自のレイアウトを設計し、他のビューで使用できます。
このLaravelチュートリアルがお役に立てば幸いです。次に、次で Laravelチュートリアル 、 Laravelのデータベース関連機能について説明します。
幸せな学習!
推奨読書