2019-06-26 14:39:32 1530浏览
今天千锋扣丁学堂PHP培训老师给大家分享一篇关于Laravel向公共模板赋值方法总结,首先在开发过程中许多时候都会向公共模板赋值,比如顶部导航栏,页面底部等等,不可能在每个控制器中都赋值一遍。
	
	 
View()->composer('common.header',function ($view){ //common.header 对应Blade模板 $view->with('key', 'value'); });
View()->share('key', 'value');
php artisan make:provider ComposerServiceProvider
public function boot()  {    view()->composer(      'app', //模板名      'App\Http\ViewComposers\MovieComposer' //方法名或者类中的方法    );  }
view()->composer('app','App\Http\ViewComposers\MovieComposer@foobar'); //自己定义的方法
<?phpnamespace App\Http\ViewComposers;use Illuminate\View\View;//**记得引入这个啊(因为在composer函数参数里使用了View类)**class MovieComposer{  public $movieList = [];  public function __construct()  {    $this->movieList = [      'Shawshank redemption',      'Forrest Gump',    ];  }  public function compose(View $view)  {    $view->with('latestMovie');  }}
view()->composer('*', function (View $view) {  //logic goes here});
view()->composer(['nav', 'footer'],'App\Http\ViewComposers\MovieComposer');或者 view()->composer(['admin.admin'], function ($view){      $column = $this->object_array(DB::table('column')->get());      foreach($column as $k=>$v){        $chid = explode(',',$v['childid']);        foreach($chid as $value){          $column[$k]['chname'][] = $this->object_array(DB::table('column_child')->where('id',$value)->first());        }      }      $view->with('columns',$column);    });
	
	 
                           
	
【关注微信公众号获取更多学习资料】 【扫码进入Python全栈开发免费公开课】