如何通过View::first使用Laravel Blade的动态模板详解

 更新时间:2017年09月21日 10:37:02   作者:specs  
这篇文章主要给大家介绍了关于如何通过View::first使用Laravel Blade的动态模板的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用php具有一定的参考学习价值,需要的朋友们下面随着小编来一起看看吧。

前言

本文主要给大家介绍了关于View::first使用Laravel Blade动态模板的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧。

当创建动态组件或者页面的时候,有时候我们想当自定义模版存在的时候展示它,否则展示默认的模版。

例如,当我们创建页面模块的时候,通常需要给“关于我们”和“联系我们”自定义模版(如展示照片或者联系表单),而“我们的服务”则可以使用默认模板。

我们可以通过一系列的 if 判断或者使用 view()->exists()  来判断自定义模板是否存在,然而,Laravel 5.5 为我们带来了一个更加优雅的方法来实现这个功能。

View::first 的使用

view()->first() 方法可以使我们把下面的代码

if (view()->exists('custom-template')) {
 return view('custom-template', $data);
}
 
return view('default-template', $data);

替换为更加简洁的版本:

return view()->first(
  ['custom-template', 'default-template'], $data
);

必须给这个方法的第一个参数传递一个数组,当第一个存在的时候,就将使用它。

当然,你可以传递任意个数的模版,你甚至还可以使用动态名称:

return view()->first([
  "pages/{$page->slug}",
  "pages/category-{$page->category->slug}",
  "pages/default-template"
], $data);

此外,你还可以通过 Facade 版本的这个功能:

\View::first($templates, $data)

这个动态选择模版的 Blade 方法是在 Laravel 5.5 中引入的,使得处理动态模版更加简洁,不需要额外的条件判断了。

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对脚本之家的支持。

相关文章

  • php比较两个绝对时间的大小

    php比较两个绝对时间的大小

    这篇文章主要介绍了php比较两个绝对时间的大小,,需要的朋友可以参考下
    2014-01-01
  • LAMP环境使用Composer安装Laravel的方法

    LAMP环境使用Composer安装Laravel的方法

    这篇文章主要介绍了LAMP环境使用Composer安装Laravel的方法,简单分析了Ubuntu服务器环境下Composer的安装及使用Composer安装Laravel的相关命令与使用技巧,需要的朋友可以参考下
    2017-03-03
  • 微信获取用户地理位置信息的原理与步骤

    微信获取用户地理位置信息的原理与步骤

    这篇文章主要介绍了微信获取用户地理位置信息的原理与步骤的相关资料,需要的朋友可以参考下
    2015-11-11
  • Laravel框架源码解析之入口文件原理分析

    Laravel框架源码解析之入口文件原理分析

    这篇文章主要介绍了Laravel框架源码解析之入口文件,结合实例形式分析了Laravel框架入口文件运行原理及相关操作注意事项,需要的朋友可以参考下
    2020-05-05
  • 深入浅析安装PhpStorm并激活的步骤详解

    深入浅析安装PhpStorm并激活的步骤详解

    这篇文章主要介绍了深入浅析安装PhpStorm并激活的步骤详解,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-09-09
  • php判断用户是否关注微信公众号

    php判断用户是否关注微信公众号

    这篇文章主要为大家详细介绍了php判断用户是否关注微信公众号,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2016-07-07
  • php中的curl使用入门教程和常见用法实例

    php中的curl使用入门教程和常见用法实例

    起先cURL是做为一种命令行工具设计出来的,比较幸运的是,php也支持cURL了。通过cURL这个利器,我们能在php程序中自由地发送HTTP请求到某个url来获取或者提交数据,并且支持其它多种协议,比如FTP,Telnet以及SMTP等。在这篇博文中,我将简述下,在php中具体怎么使用cURL来处理一些事情。
    2014-04-04
  • php数据序列化测试实例详解

    php数据序列化测试实例详解

    这篇文章主要介绍了php数据序列化测试实例详解的相关资料,主要介绍msgpack、json、serialize对比,需要的朋友可以参考下
    2017-08-08
  • 关于PHP5.6+版本“No input file specified”问题的解决

    关于PHP5.6+版本“No input file specified”问题的解决

    这篇文章主要介绍了关于PHP5.6+版本“No input file specified”问题的解决,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-12-12
  • 关于Laravel Route重定向的一个注意点

    关于Laravel Route重定向的一个注意点

    这篇文章主要给大家介绍了关于Laravel Route重定向的一个注意点,文中给出了详细的示例代码,有需要的朋友可以参考借鉴,下面来一起看看吧。
    2017-01-01

最新评论