laravel框架页面数据渲染HTML compact的用法

向视图中传递变量

我们在开发web应用当中,通常都不是为了写静态页面而生的,我们需要跟数据打交道,那么这个时候,问题就来了,在一个MVC的框架中,怎么将数据传给视图呢?比如我们要在 ArticleController 的 index 方法的视图输出一个 $title 的变量,在Laravel中,有下面几种常见的方法:

使用with()方法

 public function index()
    {
        $title = ‘文章标题1‘;
        return view(‘articles.lists‘)->with(‘title‘,$title);
    }

这样的 with(‘title‘,$title) 中,第一个 ‘title‘ 就是key,第二个 $title 就是值,这样我们就可以在我们的 articles/lists.blade.php 中输出这个变量了:

<body>
<h1><?php echo $title; ?></h1>

</body>

刷新我们的 blog.dev ,就可以看到类似这样的页面了:

而在blade引擎中,我们可以这样输出变量:

<body>
<h1>{{ $title }}</h1>

</body>

其实在blade引擎中, {{ $title }} 会被解析为类似 这样的输出 <?php echo $title; ?> ,不过这里的 {{ }} 符号会将数据原样输出,比如你将 $title 写成这样:

 public function index()
    {
        $title = ‘<span style="color: red">文章</span>标题1‘;
        return view(‘articles.lists‘)->with(‘title‘,$title);
    }

这个时候你用 {{ $title }} 输出,会看到类似下面这样:

如果你想将 $title 作为页面元素渲染输出,你需要这样写:

<h1>{!! $title !!}</h1>

这里的 {{ }} 和 {!! !!} 是blade的最基础的用法,这两个我们会用得特别多,后面我会详细说说blade的用法。

直接给view()传参数

使用这个方法的时候,你可以这样写:

public function index()
    {
        $title = ‘<span style="color: red">文章</span>标题1‘;
        return view(‘articles.lists‘,[‘title‘=>$title]);
    }

刷新页面,你依然会看到一样的输出。这里需要说明一下,如果你传多个变量,比如:

 public function index()
	{
		$title = ‘<span style="color: red">文章</span>标题1‘;
		$intro = ‘文章一的简介‘;
		return view(‘articles.lists‘,[
										‘title‘=>$title,
										‘introduction‘=>$intro
										]);
	}

在传递的数组中:

[
‘title‘=>$title,
‘introduction‘=>$intro
]

每一个key会在视图中作为变量,而 value 就作为变量的值。所以在视图中我们需要这样输出:

<body>
<h1>{!! $title !!}</h1>
<p>{{ $introduction }}</p>
</body>

这里应写成 {{ $introduction }} ,而不是 {{ $intro }} 。

使用compact

使用compact是这样写的:

 public function index()
    {
        $title = ‘<span style="color: red">文章</span>标题1‘;
        $intro = ‘文章一的简介‘;
        return view(‘articles.lists‘,compact(‘title‘,‘intro‘));
    }

compact() 的字符串可以就是变量的名字,多个变量名用逗号隔开。这个时候注意更改视图的变量输出。

以上就是Laravel中常用的几种向视图传递变量的方法,选择一种你喜欢的方式并坚持这一种写法就可以了,我是使用第三种。

原文地址:https://www.cnblogs.com/dereckbu/p/8352925.html

时间: 2024-11-03 22:29:36

laravel框架页面数据渲染HTML compact的用法的相关文章

每天一点点之vue框架开发 - 数据渲染-for循环中动态设置页面背景色

实现方式很简单,在属性前加:,表示绑定 :style="{'background':item.bgColor} 代码样例: <li v-for="item in laber_cloud"> <router-link :style="{'background':item.bgColor}" >{{item.name}}</router-link> </li> 原文地址:https://www.cnblogs.c

laravel框架之数据迁移和数据填充

一.数据迁移 1.创建一个迁移 1>使用artisan命令make:migration来创建一个新的迁移: php artisan make:migration create_sutdents_table 新的迁移位于database/migrations目录下,每个迁移文件名都包含时间戳从而允许Laravel判断其顺序. 2>其他一些选项 --table用来指定表名 php artisan make:migration create_students_table --table=studen

laravel框架的数据迁移 (摘取)

生成迁移 使用 Artisan make:migration 来创建迁移: php artisan make:migration create_users_table 新的迁移文件会被放置在 database/migrations 目录中.每个迁移文件的名称都包含了一个时间戳,以便让 Laravel 确认迁移的顺序. --table 和 --create 选项可用来指定数据表的名称,或是该迁移被执行时是否将创建的新数据表.这些选项需在预生成迁移文件时填入指定的数据表: php artisan m

LARAVEL框架及数据迁移

一.数据迁移三步骤 配置数据库连接 首先在 .env 中配置数据库连接信息,如php连接数据库,需要先选择在那个数据库,然后再进行操作 创建数据库迁移文件 输入如下命令 php artisan make:migration create_post_table   创建文件成功后开始编辑数据内容. public function up() { Schema::create('post', function (Blueprint $table) { $table->increments('id');

pyspider示例代码三:用PyQuery解析页面数据

本系列文章主要记录和讲解pyspider的示例代码,希望能抛砖引玉.pyspider示例代码官方网站是http://demo.pyspider.org/.上面的示例代码太多,无从下手.因此本人找出一下比较经典的示例进行简单讲解,希望对新手有一些帮助. 示例说明: 本示例主要是PyQuery解析返回的response页面数据.response.doc解析页面数据是pyspider的主要用法,应该熟练掌握基本使用方法.其他返回类型示例见后续文章. pyspider爬取的内容通过回调的参数respon

PHP 基于laravel框架获取微博数据之一 模拟新浪微博登录

参考资料:http://www.csuldw.com/2016/11/10/2016-11-10-simulate-sina-login/http://blog.csdn.net/fly_leopard/article/details/51148904http://www.tuicool.com/articles/uIJzYff http://blog.csdn.net/u010029983/article/details/46364113等 模拟新浪微博登录是抓取新浪数据的基础,网上的参考资料

PHP 基于laravel框架获取微博数据之二 用户数据的使用

开始抓取微博数据的时候,只是想获得一条热门微博下的所有评论,因为里面有不少图片广告,所以想试试能不能分析出热门微博评论里的异常用户. 使用PHP的Laravel框架后,通过队列.命令等各种功能,最后构架了一套完整的微博用户数据抓取平台,经过一段时间的运行积累了大量数据,那么使用这些数据能做什么呢? 微博数据分析很早就有人在做了,网上采集分析工具貌似有很多,搜索一下想找一些微博数据分析的具体方案.世事变幻,发现很多几年前的微博数据分析平台都不能用了,可能微博数据分析和微博一样在商业上还是没有什么更

Laravel框架学习(四)

一. composer的安装: 1.Composer是什么? 是 PHP 用来管理依赖(dependency)关系的工具. 你可以在自己的项目中声明所依赖的外部工具库(libraries), Composer 会帮你安装这些依赖的库文件. 2.网址:https://getcomposer.org 下载:https://getcomposer.org/download/ 中国全量镜像:http://pkg.phpcomposer.com/ 启用本镜像服务命令: composer config -g

Laravel框架的体系结构

Laravel被称为“全栈”式框架,因为它能够处理从网络服务到数据库管理.HTML生成的一切事情,垂直集成的web开发环境给开发者提供了更好的体验. 开发人员可以通过命令行工具,生成和管理Laravel项目环境.Laravel附带了一个名为Artisan的优秀的命令行工具,它提供了一些开发过程中有用的命令用,可以用来生成框架代码和数据库管理.它是基于强大的Symfony Console 组件开发的. Laravel的目标是给开发者创造一个愉快的开发过程,并且不牺牲应用的功能性.快乐的开发者才能创