在模板之外使用Blade指令?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (1)
  • 关注 (0)
  • 查看 (64)

Laravel 5.1:我在BladeServiceProvider中定义了一些自定义指令(下面的例子)。现在我想在视图模板之外使用它们来格式化字符串(我在自定义的ExportService类中使用PHPExcel编写EXCEL文件)。可以重用我的指令吗?

 Blade::directive('appFormatDate', function($expression) {
        return "<?php
         if (!is_null($expression)) {
           echo date(\Config::get('custom.dateformat'), strtotime($expression));
         }
         else {
           echo '-';
         }
         ?>";
    });
提问于
用户回答回答于

BladeCompiler有一个compileString方法,它允许您使用的意见外刀片指令。:)

所以,你可以做这样的事情:

$timestamp = '2015-11-10 17:41:53';
$result = Blade::compileString('@appFormatDate($timestamp)');

扫码关注云+社区

领取腾讯云代金券