下载安卓APP箭头
箭头给我发消息

客服QQ:3315713922

Laravel 5 共享数据的方法

作者:课课家     来源: http://www.kokojia.com/点击数:881发布时间: 2015-11-02 11:04:50

标签: PHP大数据视频教程数据

恍惚恍惚又来到了文章的学习,想必大家又有很多问题吧!

我们都知道模板一般会用到继承,导航栏就是一个很好的例子,但是导航栏的数据如何共享,比如有个导航的文件叫在view/navigation.blade.PHP 为了简单一点,文件里只有设置了一个变量

1 {{ $cqh }}

ccna视频教程

现在的要求是每个页面都会用到这个变量,如何共享这个数据呢?   一般这样的操作我会在Laravel服务的boot方法里设置,下面介绍两种共享数据的方法   方法一:使用View:share方法,如CqhServiceProvider里

1 2 3 4 public function boot() {     View::share('cqh','chenqionghe'); }

 

Oracle培训这是使用外观模式,也可以直接使用view()方法,

1 view()->share('cqh', 'chenqionghe');

方法二:使用composer方法单独对这个navigation.blade.php进行传送数据,方法如下

1 2 3 4 5 6 public function boot() {     view()->composer('navigation', function ($view) {         $view->with('cqh','chenqionghe');     }); }

以上是使用闭包的形式来完成这个操作,其实这和路由一样,也可以用类来代替,Laravel里叫组件,方法如下

1 2 3 4 public function boot() {     View::composer('navigation', 'App\\\\Http\\\\ViewComposers\\\\MyViewComposer'); }

 

有人把数据比喻为蕴藏能量的煤矿。煤炭按照性质有焦煤、无烟煤、肥煤、贫煤等分类,而露天煤矿、深山煤矿的挖掘成本又不一样。与此类似,大数据并不在“大”,而在于“有用”。价值含量、挖掘成本比数量更为重要。对于很多行业而言,如何利用这些大规模数据是成为赢得竞争的关键。
  大数据的价值体现在以下几个方面:1)对大量消费者提供产品或服务的企业可以利用大数据进行精准营销;2) 做小而美模式的中长尾企业可以利用大数据做服务转型;3) 面临互联网压力之下必须转型的传统企业需要与时俱进充分利用大数据的价值。

不过,“大数据”在经济发展中的巨大意义并不代表其能取代一切对于社会问题的理性思考,科学发展的逻辑不能被湮没在海量数据中。著名经济学家路德维希·冯·米塞斯曾提醒过:“就今日言,有很多人忙碌于资料之无益累积,以致对问题之说明与解决,丧失了其对特殊的经济意义的了解。”[5] 这确实是需要警惕的。

oracle数据库教程

上面这样就是注册了视图组件,并且在每次 navigation视图渲染的时候,MyViewComposer@compose 都将会被执行。 下面我们来看这个组件怎么定义

1 2 3 4 5 6 7 8 9 <?php namespace App\\\\Http\\\\ViewComposers; use Illuminate\\\\Contracts\\\\View\\\\View; class MyViewComposer {     public function compose(View $view)     {         $view->with('cqh','chenqionghe');     } }

在视图被渲染之前,视图组件的 compose 方法就会被调用,并且传入一个 Illuminate\\\\Contracts\\\\View\\\\View 实例。你可以使用 with 方法来把数据绑定到 view。     注意:方法一和方法二其实是有区别的,方法一是对所有的视图都传递的cqh数据,而方法二只是对navigation视图传递了cqh数据 如果方法二要达到方法一的效果,可以这样

1 2 3 4 View::composer('*', function($view) {     // });

 

mysql数据库这样就会对所有视图进行传递了   也可以针对多个视图指定MyViewComposer组件

1 View::composer(['navigation', 'footer'], 'App\\\\Http\\\\ViewComposers\\\\MyViewComposer');

也可以使用 composers 方法来同时定义一群视图组件

1 2 3 4 5 View::composers([     'App\\\\Http\\\\ViewComposers\\\\AdminComposer' => ['admin.index', 'admin.profile'],     'App\\\\Http\\\\ViewComposers\\\\UserComposer' => 'user',     'App\\\\Http\\\\ViewComposers\\\\ProductComposer' => 'product' ]);

更多视频课程文章的课程,可到课课家官网查看。我在等你哟!!!

赞(117)
踩(0)
分享到:
华为认证网络工程师 HCIE直播课视频教程