ホームページ >バックエンド開発 >PHPチュートリアル >Laravel 5.4 入門シリーズ: ルーティングとビュー
主な知識:
ルーティングからビューまでの基本プロセス
データ転送
最初の講義の最後のページがどのように表示されるかを見てみましょう。まずルーティングを見てみましょう:
// /routes/web.php Route::get('/', function () { return view('welcome'); });
わかりやすく言うと、Web サイトのルート ディレクトリにアクセスすると、welcome
ビューに戻り、ビューのコンテンツを変更します: welcome
视图,我们修改下视图的内容:
// /resources/views/welcome.blade.php <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Document</title> </head> <body> 你好, Laravel </body> </html>
可以看到,定义返回的视图时,可以省略 .blade.php
后缀,该后缀代表使用 Laravel 的 Blade 模板功能,以后会介绍到。
现在,再次访问,变成了我们定义的内容。
我们在视图中,也可以使用变量的形式。首先,在路由的函数中返回给视图 name
变量:
// /routes/web.php Route::get('/', function () { $name = "Zen"; return view('welcome',['name'=>$name]); });
也可以写成:
// /routes/web.php Route::get('/', function () { $name = "Zen"; return view('welcome')->with('name',$name); });
更为常见的写法是使用 php 提供的 compact
函数,compact
函数的作用是创建一个包含变量名和变量的值的数组,更加灵活和简便:
// /routes/web.php Route::get('/', function () { $name = "Zen"; $age = 99; $sex = "男"; return view('welcome',compact('name','age','sex'));; });
在视图中显示该变量:
// /resources/views/welcome.blade.php // 省略 <body> 你好, <?php echo $name?> </body>
虽然可以嵌入 PHP 语言来显示变量,不过 Laravel 提供了更为简洁的语法:
// /resources/views/welcome.blade.php <body> 你好, {{ $name }} ,你的年龄是 {{ $age }}, 你的性别是 {{ $sex }} </body>
或者:
// /resources/views/welcome.blade.php <body> 你好, {!! $name !!} ,你的年龄是 {!! $age !!}, 你的性别是 {!! $sex !!} </body>
这两者有什么区别呢,看下面的例子:
$data = '<alert>123</alert>'
在视图中两者的输出:
{{ $data }}
将会输出 <alert>123</alert>
{!! $data !!}
将会输出警告框
也就是说:
{{ 变量名 }}
: 转义输出
{!! 变量名 !!}
:原生输出,比如图片、链接、js 代码等
主要知识点:
从路由到视图的基本流程
数据传递
我们来看看第一讲最后的页面是怎么出来的。先来看看路由:
// /routes/web.php Route::get('/', function () { return view('welcome'); });
用大白话说,就是当我们访问网站根目录的时候,就返回 welcome
视图,我们修改下视图的内容:
// /resources/views/welcome.blade.php <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Document</title> </head> <body> 你好, Laravel </body> </html>
可以看到,定义返回的视图时,可以省略 .blade.php
后缀,该后缀代表使用 Laravel 的 Blade 模板功能,以后会介绍到。
现在,再次访问,变成了我们定义的内容。
我们在视图中,也可以使用变量的形式。首先,在路由的函数中返回给视图 name
变量:
// /routes/web.php Route::get('/', function () { $name = "Zen"; return view('welcome',['name'=>$name]); });
也可以写成:
// /routes/web.php Route::get('/', function () { $name = "Zen"; return view('welcome')->with('name',$name); });
更为常见的写法是使用 php 提供的 compact
函数,compact
函数的作用是创建一个包含变量名和变量的值的数组,更加灵活和简便:
// /routes/web.php Route::get('/', function () { $name = "Zen"; $age = 99; $sex = "男"; return view('welcome',compact('name','age','sex'));; });
在视图中显示该变量:
// /resources/views/welcome.blade.php // 省略 <body> 你好, <?php echo $name?> </body>
虽然可以嵌入 PHP 语言来显示变量,不过 Laravel 提供了更为简洁的语法:
// /resources/views/welcome.blade.php <body> 你好, {{ $name }} ,你的年龄是 {{ $age }}, 你的性别是 {{ $sex }} </body>
或者:
// /resources/views/welcome.blade.php <body> 你好, {!! $name !!} ,你的年龄是 {!! $age !!}, 你的性别是 {!! $sex !!} </body>
这两者有什么区别呢,看下面的例子:
$data = '<alert>123</alert>'
在视图中两者的输出:
{{ $data }}
将会输出 <alert>123</alert>
{!! $data !!}
将会输出警告框
也就是说:
{{ 变量名 }}
: 转义输出
{!! 变量名 !!}
rrreee
.blade.php
サフィックスを省略できることがわかります。このサフィックスは、後で紹介する Laravel の Blade テンプレート関数の使用を表します。 name
変数: 🎜rrreee🎜 は次のように書くこともできます: 🎜rrreee🎜 より一般的な書き方は、compact
を使用することです。 > PHP が提供する compact
の機能は、 より柔軟でシンプルな変数名と変数の値を含む配列を作成することです。 : 🎜rrreee🎜 ビューに表示されるこの変数: 🎜rrreee🎜 PHP 言語は変数を表示するために埋め込むことができますが、Laravel はより簡潔な構文を提供します: 🎜rrreee🎜 または: 🎜rrreee🎜 2 つの違いは何ですか?次の例: 🎜rrreee🎜 ビュー内の 2 つの出力: 🎜🎜🎜🎜{{ $data }}
は、<alert>123</alert>
を出力します。 🎜🎜🎜🎜 {!! $data !!}
は警告ボックス 🎜🎜🎜🎜 を出力します。つまり、 🎜🎜🎜🎜{{ 変数名}}
: 出力をエスケープします 🎜🎜🎜🎜 {!! 変数名!!}
: 画像、リンク、JS コードなどのネイティブ出力 🎜🎜🎜
🎜
welcome
ビューに戻り、ビューのコンテンツを変更します: 🎜rrreee🎜。この定義は、ビューを返すときに、.blade.php
サフィックスを省略できることがわかります。このサフィックスは、後で紹介する Laravel の Blade テンプレート関数の使用を表します。 🎜🎜 さて、もう一度考えてみると、それが私たちの定義になります。 🎜name
変数: 🎜rrreee🎜 は次のように書くこともできます: 🎜rrreee🎜 より一般的な書き方は、compact
を使用することです。 > PHP が提供する compact
の機能は、 より柔軟でシンプルな変数名と変数の値を含む配列を作成することです。 : 🎜rrreee🎜 ビューに表示されるこの変数: 🎜rrreee🎜 PHP 言語は変数を表示するために埋め込むことができますが、Laravel はより簡潔な構文を提供します: 🎜rrreee🎜 または: 🎜rrreee🎜 2 つの違いは何ですか?次の例: 🎜rrreee🎜 ビュー内の 2 つの出力: 🎜🎜🎜🎜{{ $data }}
は、<alert>123</alert>
を出力します。 🎜🎜🎜🎜 {!! $data !!}
は警告ボックス 🎜🎜🎜🎜 を出力します。つまり、 🎜🎜🎜🎜{{ 変数名}}
: 出力をエスケープします 🎜🎜🎜🎜 {!! 変数名!!}
: 画像、リンク、JS コードなどのネイティブ出力 🎜🎜🎜以上がLaravel 5.4 入門シリーズ: ルーティングとビューの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。