Laravel 模板扩展 (扩展 Blade) 的相关问题 .

<?php

namespace App\Providers;

use Blade;
use Illuminate\Support\ServiceProvider;

class AppServiceProvider extends ServiceProvider
{
/**
 * Perform post-registration booting of services.
 *
 * @return void
 */
public function boot()
{
    Blade::directive('datetime', function($expression) {
        return "<?php echo with{$expression}->format('m/d/Y H:i'); ?>";
    });
}

/**
 * Register bindings in the container.
 *
 * @return void
 */
public function register()
{
    //
}
}

这个是官方给的Demo 然而并没帮上多大的忙.
这个扩展文件 或者说函数 到底要写在或者说是放在什么地方呢...

i@llons.com
《L04 微信小程序从零到发布》
从小程序个人账户申请开始,带你一步步进行开发一个微信小程序,直到提交微信控制台上线发布。
《L02 从零构建论坛系统》
以构建论坛项目 LaraBBS 为线索,展开对 Laravel 框架的全面学习。应用程序架构思路贴近 Laravel 框架的设计哲学。
讨论数量: 5

artisan make:provider AppServiceProvider

7年前 评论

用这个命令会在App\Providers 下生成文件,然后再填代码就行了,写好了在app.php的providers内注册下这个类,blade就可以用了,记得清一下blade的缓存(artisan view:clear)

7年前 评论

@hanvnan 来挖坟么!一年前的帖子,不过还是感谢您的回复,现在对模板自定义函数要求不是很高,项目中也很少会去用了。还有,我代码洁癖并不想把各种代码堆在 AppServiceProvider 里面!这种方案我认为是没有办法才会去做的。

7年前 评论

@aqyuyang 哈哈哈哈,我发之前看了时间,我回一下是想万一有人百度看到,能对他有点帮助,那个mark:provider后面的是随便定义的,可以任意XXXServiceProvider

7年前 评论

调用时,需要注意传参, @datetime(new \Datetime()), 否则无法执行format方法。

5年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!