1

我正在翻译一个用 Laravel 4 编写的应用程序。当我试图翻译库文件中的一行时,我得到了一个错误,过了一段时间,我发现你不能将翻译直接设置为库文件中的变量.
以下几行

class Service {

    private $test = trans('general.name');

产生以下

语法错误,意外 '(',期待 ',' 或 ';'

指向“private $test”行。

我想补充一点,如果变量在函数中,或者在不同类型的文件(即视图)中,我通常可以翻译并设置为变量。

有人对此有答案吗?

4

2 回答 2

3

您不能在类变量中使用函数。您应该执行以下操作:

<?php

class Service {

    private $test;

    public function __construct()
    {
        $this->test = trans('general.name');
    }

}
于 2013-05-27T01:27:27.480 回答
0
class Service {

private $name;

public function __construct()
{
    $this->name = trans('general.name');
}

public static function test() {
    $service = new Service;
    return $service->name;
}

}

这是您的静态解决方案:

echo Service::test();

这不是完美的解决方案,但在某些情况下可能很有用

于 2013-07-11T13:09:41.573 回答