Laravel 5.5 Blade指令和本地化无法一起使用

时间:2018-07-31 05:01:51

标签: php laravel localization laravel-blade

我正在尝试创建一个带参数和

的Blade指令。
  1. 查找翻译
  2. 将结果大写

我已经创建了该指令的多个版本,但是由于所有版本都不会导致错误,因此我通常只会看到所传递文本的大写版本。

版本1(尝试使用{}和不使用{})

    Blade::directive('up', function ($expression) {
        $x = trans($expression);
        $y = strtoupper($x);
        return "<?php $y; ?>";
    });

另一个版本

    Blade::directive('up', function ($expression) {
        $x = trans($expression);
        return "<?php strtoupper({$x}); ?>";
    });

到目前为止,我已经在刀片文件中插入了一个php块,以验证我的trans()查找是否正确。

1 个答案:

答案 0 :(得分:0)

为什么不使用__('messages.welcome')(下划线-下划线功能)?

也许这应该起作用:

Blade::directive('up', function ($expression) {
    return echo strtoupper(__($expression));
});

或者在前端这样做:

{{ @up(__('translation.string')) }}

并具有以下指令:

Blade::directive('up', function ($expression) {
    return echo strtoupper($expression);
});

在我看来,这在刀片中也很好:

{{ strtoupper(__('translation.string')) }}