Laravel 5框架学习之向视图传送数据


Posted in PHP onApril 08, 2015

我们在Routes.php中新建一个路由

Route::get('about', 'PagesController@about');

在浏览器中浏览会获得一个错误,错误信息仅仅是一个提示信息,缺少细节,在生产环境 It' ok,但是开发阶段我们希望获得详细信息。

在项目的根目录找到 .env 文件,修改

APP_DEBUG=true

这将显示详细的错误信息,PagesController 不存在。但在生产环境一定要设置为 false

我们可以手工新建控制器,但更快的方式是利用 laravel 提供的生成器。在命令行当前项目目录中运行:

php artisan

可以看到laravel提供的功能。

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,在命令行运行:

php artisan make:controller PagesController --plain

再看一下生成的结果

<?php namespace App\Http\Controllers;

use App\Http\Requests;

use App\Http\Controllers\Controller;

use Illuminate\Http\Request;

class PagesController extends Controller {

 //

}

基本上是一个空的controller,所有的方法我们需要自己创建。

如果你想知道到底有什么参数我们可以在命令行执行,你可以运行下面的命令来查看帮助

php artisan help make:controller

ok, 你可以经常使用help命令来帮助你了解这些参数。

在PagesController中建立about方法。

 public function about() {

        return 'About Page';

    }

在浏览器冲查看结果,错误消失,返回简单的信息。

返回视图

我们当然希望返回html文档,修改about方法的返回:

 public function about() {

        return view('pages.about');

    }

注意:返回的结果是 pages.about ,这表示在 views 子目录中的 pages 子目录中的 about.balde.php 文件。让我们创建 resources\views\pages\about.balde.php 文件

<!doctype html>

<html lang="en">

<head>

    <meta charset="UTF-8">

    <title>Document</title>

</head>

<body>

<h1>About</h1>

</body>

</html>

That's it. 运行浏览器查看吧,?

向视图传送数据

修改PagesController.php

 public function about() {

        $name = 'Zhang Jinlgin';

        return view('pages.about')->with('name', $name);

    }

修改我们的视图文件 about.blade.php

<h1>About <?= $name ?></h1>

Bingo,查看结果吧。

我们使用的laravel使用了blade模板,我们可以利用这个好处修改视图:

<h1>About {{ $name }}</h1>

看起来更好了,在blade中,{{}}是转义html的语义的,让我来修改一个数据:

$name = '<span style="color: red">Zhang Jinlgin</span>';

查看结果,发现所有的html元素都被转义了。但是如果不需要转义html,可以使用 {!! !!},修改视图:

<h1>About {!! $name !!}</h1>

再看结果,?

以上所述就是本文的全部内容了,希望能够对大家熟练掌握Laravel5有所帮助。

PHP 相关文章推荐
一个阿拉伯数字转中文数字的函数
Oct 09 PHP
利用 window_onload 实现select默认选择
Oct 09 PHP
PHP小技巧搜集,每个PHPer都来露一手
Jan 02 PHP
深入php中var_dump方法的使用详解
Jun 24 PHP
PHP改进计算字符串相似度的函数similar_text()、levenshtein()
Oct 27 PHP
php导入大量数据到mysql性能优化技巧
Dec 29 PHP
php微信公众平台开发类实例
Apr 01 PHP
Yii视图CGridView列表用法实例分析
Jul 12 PHP
PHP根据树的前序遍历和中序遍历构造树并输出后序遍历的方法
Nov 10 PHP
ThinkPHP框架实现导出excel数据的方法示例【基于PHPExcel】
May 12 PHP
php微信开发之关键词回复功能
Jun 13 PHP
PHP 实现 WebSocket 协议原理与应用详解
Apr 22 PHP
Laravel 5框架学习之路由、控制器和视图简介
Apr 07 #PHP
Laravel 5框架学习之Laravel入门和新建项目
Apr 07 #PHP
php生成圆角图片的方法
Apr 07 #PHP
php按单词截取字符串的方法
Apr 07 #PHP
php生成zip文件类实例
Apr 07 #PHP
php生成图片缩略图的方法
Apr 07 #PHP
Nginx下配置codeigniter框架方法
Apr 07 #PHP
You might like
星际争霸任务指南——人族
2020/03/04 星际争霸
PHP中输出转义JavaScript代码的实现代码
2011/04/22 PHP
php中用socket模拟http中post或者get提交数据的示例代码
2013/08/08 PHP
检查用户名是否已在mysql中存在的php写法
2014/01/20 PHP
PHP中CURL的CURLOPT_POSTFIELDS参数使用细节
2014/03/17 PHP
完美解决thinkphp验证码出错无法显示的方法
2014/12/09 PHP
php绘制一个扇形的方法
2015/01/24 PHP
php将服务端的文件读出来显示在web页面实例
2016/10/31 PHP
php计算多个集合的笛卡尔积实例详解
2017/02/16 PHP
Yii使用DbTarget实现日志功能的示例代码
2020/07/21 PHP
游戏人文件夹程序 ver 3.0
2006/07/14 Javascript
Prototype 学习 工具函数学习($w,$F方法)
2009/07/12 Javascript
Array.prototype.slice.apply的使用方法
2010/03/17 Javascript
jQuery EasyUI 中文API Layout(Tabs)
2010/04/27 Javascript
jQuery 获取URL的GET参数值的小例子
2013/04/18 Javascript
jquery 提交值不为空的元素示例代码
2013/05/10 Javascript
网站如何做到完全不需要jQuery也可以满足简单需求
2013/06/27 Javascript
JavaScript基础知识学习笔记
2014/12/02 Javascript
原生javascript获取元素样式
2014/12/31 Javascript
jQuery实现新消息在网页标题闪烁提示
2015/06/23 Javascript
jQuery实现控制文字内容溢出用省略号(…)表示的方法
2016/02/26 Javascript
jquery平滑滚动到顶部插件使用详解
2017/05/08 jQuery
node.js + socket.io 实现点对点随机匹配聊天
2017/06/30 Javascript
js传递数组参数到后台controller的方法
2018/03/29 Javascript
JavaScript函数式编程(Functional Programming)纯函数用法分析
2019/05/22 Javascript
详解Python中的分组函数groupby和itertools)
2018/07/11 Python
Python获取统计自己的qq群成员信息的方法
2019/11/15 Python
基于Pyinstaller打包Python程序并压缩文件大小
2020/05/28 Python
python自动生成sql语句的脚本
2021/02/24 Python
Giglio美国站:意大利奢侈品购物网
2018/02/10 全球购物
房地产销售员的自我评价分享
2013/12/04 职场文书
热爱祖国的演讲稿
2014/05/04 职场文书
2014年话务员工作总结
2014/11/19 职场文书
师德标兵事迹材料
2014/12/19 职场文书
学雷锋日活动总结
2015/02/06 职场文书
2015年英语教学工作总结
2015/05/25 职场文书