Laravel 实现在Blade模版中使用全局变量代替路径的例子
2019-10-22 18:06
1351 查看
在使用tp框架时,我们可以用常量来代替文件路径,如:
<img class="style" src="__TMPL__/uploads/ad/{$item.config.shop_image}">
我们只需要在配置文件中设置即可,
TMPL_PARSE_STRING' => array( '__TMPL__' => __ROOT__.'/tpl', '__UPLOAD__' => __ROOT__."/Data/upload")
但是在laravel框架中想要使用这种方式,却不知从何入手,然后就各种找资料,后来就用变量代替了常量。
方法一:
在laravel框架中可以视图中共享数据,利用共享数据的方式将路径设置为变量即可,在app\Providers\AppServiceProvider.php的boot方法中添加代码:
View::share("boot","/resources/assets/");
然后在blade模板中直接使用{{ $boot }}就可以获取到所设置的值,这样在引用资源时就不用谢全路径了
方法二:
由于 Blade 模版中允许使用原生 PHP 代码,所以我们可以在页面前面使用 PHP 语句来定义变量:
<?php $boot = "/resources/assets/"; ?>
然后在需要的地方直接使用{{ $boot }}就可以获取到所设置的值;
方法三:
除了上面的方法,我们还可以使用 Blade 的注释语法来定义/设置变量。由于在 Blade 中 {{-- 这里是注释 --}} 会被解析为 <?php /* 这里是注释 */ ?>,所以我们可以使用下面这样的语句来定义变量:
{{-- */$i=0;/* --}} // 这条语句会被 Blade 解析为 <?php /* */$i=0;/* */ ?>
当然,我们还可以通过扩展 Blade 模版引擎的方法来实现,具体扩展方法可以参考 官方文档。
以上这篇Laravel 实现在Blade模版中使用全局变量代替路径的例子就是小编分享给大家的全部内容了,希望能给大家一个参考
您可能感兴趣的文章:
相关文章推荐
- 在 Laravel 的 Blade 模版中使用全局变量代替路径
- 在python中实现生产者和消费者的例子(四):使用thread模块和全局变量
- 在python中实现生产者和消费者的例子(五):使用threading模块和全局变量
- 在Laravel 的 Blade 模版中实现定义变量
- Android使用Application代替全局变量
- Jquery选择器中使用变量实现动态选择例子
- 今天又哥哥问俺php 全局变量的使用问题了,俺在这里发个简单的例子
- 掷骰子统计各个面出现的次数 调用函数实现 使用全局变量
- Android开发--全局类的实现(用于保存使用的全局变量)
- laravel config文件配置全局变量的例子
- [置顶] 如何统计网站访问量,代码实现使用全局变量 Application,start,end,Session_start,Session_end事件
- Android中用Application类实现全局数据变量的使用
- 终于解决:在客户端和服务端都用dojo Loader来实现异步加载后,Node.js的全局变量__dirname无法使用
- spring boot 使用thymeleaf模版传递变量control内的响应路径不能使用@getpaing注解
- laravel在config中配置全局变量 在laravel控制器和laravel模板中如何使用 config读取
- 如何统计网站访问量,代码实现使用全局变量 Application,start,end,Session_start,Session_end事件
- 使用全局哈希表实现字符串变量的多国语言
- Jquery选择器中使用变量实现动态选择例子
- 如何统计网站访问量,代码实现使用全局变量 Application,start,end,Session_start,Session_end事件
- Spring MVC配置Freemarker全局变量,实现应用全路径