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做下载文件的实现代码及文件名中乱码解决方法
Feb 03 PHP
CodeIgniter启用缓存和清除缓存的方法
Jun 12 PHP
php实现的支持imagemagick及gd库两种处理的缩略图生成类
Sep 23 PHP
10个实用的PHP正则表达式汇总
Oct 23 PHP
php猴子选大王问题解决方法
May 12 PHP
PHP获取文件行数的方法
Jun 10 PHP
PHP面向对象程序设计组合模式与装饰模式详解
Dec 02 PHP
phpcms实现验证码替换及phpcms实现全站搜索功能教程详解
Dec 13 PHP
PHP基于DateTime类解决Unix时间戳与日期互转问题【针对1970年前及2038年后时间戳】
Jun 13 PHP
php中如何执行linux命令详解
Nov 06 PHP
PHP的PDO事务与自动提交
Jan 24 PHP
laravel实现Auth认证,登录、注册后的页面回跳方法
Sep 30 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
在Windows中安装Apache2和PHP4的权威指南
2006/10/09 PHP
Gregarius中文日期格式问题解决办法
2008/04/22 PHP
追求程序速度,而不是编程的速度
2008/04/23 PHP
用PHP将数据导入到Foxmail的实现代码
2010/09/05 PHP
PHP 面向对象程序设计(oop)学习笔记 (四) - 异常处理类Exception
2014/06/12 PHP
thinkPHP实现签到功能的方法
2017/03/15 PHP
推荐:极酷右键菜单
2006/11/29 Javascript
js中cookie的使用详细分析
2008/05/28 Javascript
取得窗口大小 兼容所有浏览器的js代码
2011/08/09 Javascript
单击按钮显示隐藏子菜单经典案例
2013/01/04 Javascript
JavaScript网页定位详解
2014/01/13 Javascript
Vue.js进行查询操作的实例详解
2017/08/25 Javascript
浅谈针对Vue相同路由不同参数的刷新问题
2018/09/29 Javascript
React手稿之 React-Saga的详解
2018/11/12 Javascript
vue项目中在外部js文件中直接调用vue实例的方法比如说this
2019/04/28 Javascript
element-ui组件中input等的change事件中传递自定义参数
2019/05/22 Javascript
Vue分页插件的前后端配置与使用
2019/10/09 Javascript
vue多个元素的样式选择器问题
2019/11/29 Javascript
javascript设计模式之迭代器模式
2020/01/30 Javascript
JavaScript动画实例之粒子文本的实现方法详解
2020/07/28 Javascript
如何在Vue.JS中使用图标组件
2020/08/04 Javascript
Vue项目利用axios请求接口下载excel
2020/11/17 Vue.js
python+selenium打印当前页面的titl和url方法
2018/06/22 Python
python批量复制图片到另一个文件夹
2018/09/17 Python
Python Flask框架扩展操作示例
2019/05/03 Python
python简单实现矩阵的乘,加,转置和逆运算示例
2019/07/10 Python
python 实现字符串下标的输出功能
2020/02/13 Python
Python os库常用操作代码汇总
2020/11/03 Python
appium+python自动化配置(adk、jdk、node.js)
2020/11/17 Python
教师个人的自我评价分享
2014/01/02 职场文书
读书伴我成长演讲稿
2014/05/07 职场文书
廉洁家庭事迹材料
2014/05/15 职场文书
2014年教研室工作总结
2014/12/06 职场文书
2015秋季开学演讲稿范文
2015/07/16 职场文书
结婚喜宴迎宾词
2015/08/10 职场文书
关于html选择框创建占位符的问题
2021/06/09 HTML / CSS