Laravel基础_关于view共享数据的示例讲解


Posted in PHP onOctober 14, 2019

1.所有视图共享数据(share)

当所有视图都需要同一个数据时,使用视图工厂的share方法。

全局帮助函数view,如果传入参数,则返回Illuminate\View\View实例,不传入参数则返回Illuminate\View\Factory实例。所以我们可以通过在服务提供者(app\Providers\AppServiceProvider.php)的boot方法中使用如下方式实现视图间共享数据:

/**
  * Bootstrap any application services.
  *
  * @return void
  */
 public function boot()
 {
  //视图间共享数据
  view()->share('share','share');
 }

然后在你的任何一个视图文件中这样写:

{{ $share }}

就会输出这个变量。

2.部分视图共享数据(Composer)

当一部分视图文件中需要同一个数据的时候,比如登录信息,可以通过视图工厂的composer方法实现。

简单起见,我们还是基于AppServiceProvider,不去单独创建服务提供者。

/**
  * Bootstrap any application services.
  *
  * @return void
  */
 public function boot()
 {
  //视图间共享数据
  view()->share('share','share');

  //视图Composer
  view()->composer('admin',function($view){
   $view->with('user',array('name'=>'lili','age'=>'18'));
  });
 }

这样,在admin视图模板文件中就可以使用一下代码来输出。

{{ $user['name'] }}
{{ $user['age'] }}

你也可以传递数据到多个视图:

view()->composer(['hello','home'],function($view){
 $view->with('user',array('name'=>'test','avatar'=>'/path/to/test.jpg'));
});

甚至所有视图(使用通配符*):

view()->composer('*',function($view){
 $view->with('user',array('name'=>'test','avatar'=>'/path/to/test.jpg'));
});

以上这篇Laravel基础_关于view共享数据的示例讲解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
PHP与javascript对多项选择的处理
Oct 09 PHP
php面向对象全攻略 (六)__set() __get() __isset() __unset()的用法
Sep 30 PHP
php入门学习知识点一 PHP与MYSql连接与查询
Jul 14 PHP
php学习之function的用法
Jul 14 PHP
php中拷贝构造函数、赋值运算符重载
Jul 25 PHP
深入php多态的实现详解
Jun 09 PHP
浅析php插件 Simple HTML DOM 用DOM方式处理HTML
Jul 01 PHP
php把session写入数据库示例
Feb 26 PHP
php随机取mysql记录方法小结
Dec 27 PHP
php使用PDO操作MySQL数据库实例
Dec 30 PHP
Yii2中YiiBase自动加载类、引用文件方法分析(autoload)
Jul 25 PHP
php实现推荐功能的简单实例
Sep 29 PHP
在Laravel 的 Blade 模版中实现定义变量
Oct 14 #PHP
在laravel框架中实现封装公共方法全局调用
Oct 14 #PHP
Laravel实现ApiToken认证请求
Oct 14 #PHP
解决Laravel5.2 Auth认证退出失效的问题
Oct 14 #PHP
Laravel 自动生成验证的实例讲解:login / logout
Oct 14 #PHP
Yii 框架控制器创建使用及控制器响应操作示例
Oct 14 #PHP
Laravel 登录后清空COOKIE的操作方法
Oct 14 #PHP
You might like
玩家交还《星际争霸》原始码光盘 暴雪报以厚礼
2017/05/05 星际争霸
php 编写安全的代码时容易犯的错误小结
2010/05/20 PHP
shopex主机报错误请求解决方案(No such file or directory)
2011/12/27 PHP
php转换颜色为其反色的方法
2015/04/27 PHP
使用新的消息弹出框blackbirdjs
2008/10/16 Javascript
jquery.combobox中文api和例子,修复了上面的小bug
2011/03/28 Javascript
简单的JavaScript互斥锁分享
2014/02/02 Javascript
JS实现仿新浪微博发布内容为空时提示功能代码
2015/08/19 Javascript
将 vue 生成的 js 上传到七牛的实例
2017/07/28 Javascript
vue 粒子特效的示例代码
2017/09/19 Javascript
angular2 组件之间通过service互相传递的实例
2018/09/30 Javascript
vue中组件的过渡动画及实现代码
2018/11/21 Javascript
Vue-cli3多页面配置详解
2020/03/22 Javascript
Vue 使用typescript如何优雅的调用swagger API
2020/09/01 Javascript
Python中使用Flask、MongoDB搭建简易图片服务器
2015/02/04 Python
Django中redis的使用方法(包括安装、配置、启动)
2018/02/21 Python
python将.ppm格式图片转换成.jpg格式文件的方法
2018/10/27 Python
python批量处理文件或文件夹
2020/07/28 Python
django实现web接口 python3模拟Post请求方式
2019/11/19 Python
使用tensorflow显示pb模型的所有网络结点方式
2020/01/23 Python
Python3变量与基本数据类型用法实例分析
2020/02/14 Python
Python 使用 PyQt5 开发的关机小工具分享
2020/07/16 Python
Python如何实现线程间通信
2020/07/30 Python
详解HTML5中的元素与元素
2015/08/17 HTML / CSS
常用的HTML5列表标签
2017/06/20 HTML / CSS
伦敦最有品味的百货:Liberty London
2016/11/12 全球购物
几个SQL的面试题
2014/03/08 面试题
公司保密承诺书
2014/03/27 职场文书
超市商业计划书
2014/05/04 职场文书
公司爱心捐款倡议书
2014/05/14 职场文书
经理任命书模板
2014/06/06 职场文书
质量月口号
2014/06/20 职场文书
对外汉语教师推荐信
2015/03/27 职场文书
python 遍历磁盘目录的三种方法
2021/04/02 Python
redis连接被拒绝的解决方案
2021/04/12 Redis
Java字符缓冲流BufferedWriter
2022/04/09 Java/Android