laravel之扩展Blade指令扩展

一曲冷凌霜 提交于 2020-08-05 04:05:09

1、先创建一个BladeExtendsServerPrvoider

php artisan make:prvoider BladeExtendsServerPrvoider

可以看到创建了文件
app/Providers/BladeExtendsServerProvider.php

查看文件,找到boot方法

public function boot()
    {
        //
        Blade::directive('todate', function($expression) {
           return "<?php echo date('Y-m-d H:i',$expression); ?>";
       });
    }

todate是这个指令的名字,function($expression){}是匿名函数写法,参数就是传值

2、注册到提供者里面
打开config/app.php

'providers' => [
    ...
    App\Providers\BladeExtendServerProvider::class
    ]

3、清除缓存的视图文件

php artisan view:clear

4、演示
在controller里,写入参数

return view('index',['time'=>time()]);

在blade文件里,写入

@todate($time)

其实也可以直接这样写,以便测试

@todate(1590402985)

在浏览器中执行index controller, 输出的效果如下

2018-04-23 02:40
标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!