您好,登錄后才能下訂單哦!
這篇文章給大家介紹Laravel 5中怎么向視圖傳送數(shù)據(jù),內(nèi)容非常詳細(xì),感興趣的小伙伴們可以參考借鑒,希望對(duì)大家能有所幫助。
我們?cè)赗outes.php中新建一個(gè)路由
代碼如下:
Route::get('about', 'PagesController@about');
在瀏覽器中瀏覽會(huì)獲得一個(gè)錯(cuò)誤,錯(cuò)誤信息僅僅是一個(gè)提示信息,缺少細(xì)節(jié),在生產(chǎn)環(huán)境 It' ok,但是開發(fā)階段我們希望獲得詳細(xì)信息。
在項(xiàng)目的根目錄找到 .env 文件,修改
復(fù)制代碼 代碼如下:
APP_DEBUG=true
這將顯示詳細(xì)的錯(cuò)誤信息,PagesController 不存在。但在生產(chǎn)環(huán)境一定要設(shè)置為 false
我們可以手工新建控制器,但更快的方式是利用 laravel 提供的生成器。在命令行當(dāng)前項(xiàng)目目錄中運(yùn)行:
復(fù)制代碼 代碼如下:
php artisan
可以看到laravel提供的功能。
復(fù)制代碼 代碼如下:
php artisan make:controller PagesController
ok,在 app->http->controller 下面生成了 PagesController.php
<?php namespace App\Http\Controllers; use App\Http\Requests; use App\Http\Controllers\Controller; use Illuminate\Http\Request; class PagesController extends Controller { /** * Display a listing of the resource. * * @return Response */ public function index() { // } /** * Show the form for creating a new resource. * * @return Response */ public function create() { // } /** * Store a newly created resource in storage. * * @return Response */ public function store() { // } /** * Display the specified resource. * * @param int $id * @return Response */ public function show($id) { // } /** * Show the form for editing the specified resource. * * @param int $id * @return Response */ public function edit($id) { // } /** * Update the specified resource in storage. * * @param int $id * @return Response */ public function update($id) { // } /** * Remove the specified resource from storage. * * @param int $id * @return Response */ public function destroy($id) { // } }
這樣生成的controller包含了全部所需要的RESTful方法,我們可以簡化一下。刪除生成的PagesController.php,在命令行運(yùn)行:
復(fù)制代碼 代碼如下:
php artisan make:controller PagesController --plain
再看一下生成的結(jié)果
復(fù)制代碼 代碼如下:
<?php namespace App\Http\Controllers;
use App\Http\Requests;
use App\Http\Controllers\Controller;
use Illuminate\Http\Request;
class PagesController extends Controller {
//
}
基本上是一個(gè)空的controller,所有的方法我們需要自己創(chuàng)建。
如果你想知道到底有什么參數(shù)我們可以在命令行執(zhí)行,你可以運(yùn)行下面的命令來查看幫助
復(fù)制代碼 代碼如下:
php artisan help make:controller
ok, 你可以經(jīng)常使用help命令來幫助你了解這些參數(shù)。
在PagesController中建立about方法。
復(fù)制代碼 代碼如下:
public function about() {
return 'About Page';
}
在瀏覽器沖查看結(jié)果,錯(cuò)誤消失,返回簡單的信息。
返回視圖
我們當(dāng)然希望返回html文檔,修改about方法的返回:
復(fù)制代碼 代碼如下:
public function about() {
return view('pages.about');
}
注意:返回的結(jié)果是 pages.about ,這表示在 views 子目錄中的 pages 子目錄中的 about.balde.php 文件。讓我們創(chuàng)建 resources\views\pages\about.balde.php 文件
復(fù)制代碼 代碼如下:
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
<h2>About</h2>
</body>
</html>
That's it. 運(yùn)行瀏覽器查看吧,?
向視圖傳送數(shù)據(jù)
修改PagesController.php
復(fù)制代碼 代碼如下:
public function about() {
$name = 'Zhang Jinlgin';
return view('pages.about')->with('name', $name);
}
修改我們的視圖文件 about.blade.php
復(fù)制代碼 代碼如下:
<h2>About <?= $name ?></h2>
Bingo,查看結(jié)果吧。
我們使用的laravel使用了blade模板,我們可以利用這個(gè)好處修改視圖:
復(fù)制代碼 代碼如下:
<h2>About {{ $name }}</h2>
看起來更好了,在blade中,{{}}是轉(zhuǎn)義html的語義的,讓我來修改一個(gè)數(shù)據(jù):
復(fù)制代碼 代碼如下:
$name = '<span >Zhang Jinlgin</span>';
查看結(jié)果,發(fā)現(xiàn)所有的html元素都被轉(zhuǎn)義了。但是如果不需要轉(zhuǎn)義html,可以使用 {!! !!},修改視圖:
復(fù)制代碼 代碼如下:
<h2>About {!! $name !!}</h2>
關(guān)于Laravel 5中怎么向視圖傳送數(shù)據(jù)就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,可以學(xué)到更多知識(shí)。如果覺得文章不錯(cuò),可以把它分享出去讓更多的人看到。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請(qǐng)聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。