laravel 学习笔记——视图

7 篇文章 0 订阅

视图,你所看见的部分。

很多人下意识的将视图和模板引擎挂钩,这是一种非常不正确的想法。我们称用于实际负责输出(可视)数据的就叫做视图。

因此,视图不是模板引擎。

  
  
  1. <?php
  2. echo 'Hello, world';

上面的这段代码,我们可以称之为视图,因为这段代码输出了对于客户端可视的内容。

理解了这一点,我们就可以愉快的去了解 laravel 的视图。对于框架而言,视图是作为框架的组成部分之一,框架中的视图,其职责更为单一,不再负责数据的读写、处理,而仅仅负责呈现。这样一个职责独立的视图,就需要外部提供数据,也需要外部的调度。而 laravel 的 View 类则正是负责这一工作的。

建议读者先去阅读本人的另一篇文章: 用 php 实现一个视图组件和模板引擎——基础https://www.insp.top/use-php-to-achieve-view-component-and-template-engine

开始

Laravel 的视图是一个独立的组件,并不和 Controller 耦合,可以在任意位置使用 view()来获取一个视图。

view() 函数实际上是 View 类的快速访问方式,可以在该函数的定义中看得到(在文件vendor/laravel/framework/src/illuminate/foundation/helpers.php 中可以查看)。

View 组件在 vendor/laravel/framework/src/illuminate/View/View.php 中定义。

我们一般为了方便,直接使用 view() 函数

使用

大多数使用方法在文档中已经有了十分详细的描述,常见的问题主要在传递数据上面。


在下面例子中,任何一种方式都会传递两个变量($content$author)到视图文件article 中。

  
  
  1. // 通过函数创建一个视图
  2. view('article', ['content' => 'Hello, world', 'author' => 'chongyi']);
  3.  
  4. view('article')->with('title', 'Hello, world')->with('author', 'chongyi');
  5.  
  6. view('article')->withTitle('Hello, world')->withAuthor('chongyi');
  7.  
  8. // 通过 Laravel 的 View Facade 创建一个视图
  9. use View;
  10.  
  11. View::make('article', ['content' => 'Hello, world', 'author' => 'chongyi']);
  12.  
  13. View::make('article')->with('title', 'Hello, world')->with('author', 'chongyi');
  14.  
  15. View::make('article')->withTitle('Hello, world')->withAuthor('chongyi');
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值