【问题标题】:Laravel: No public strings in classes?Laravel:类中没有公共字符串?
【发布时间】:2017-04-27 15:30:15
【问题描述】:

我想设置一些字符串以便在函数中进一步使用,但 Laravel 只是给了我一个“哎呀”?!

class MyController extends Controller

{

    public $server = $_SERVER['SERVER_NAME']; <-----------------

    public function logger()

        {

            // do something

        }


    public function info()

        {

            // do something

        }

}

即使没有公众也行不通。

有什么想法吗?非常感谢!

【问题讨论】:

  • 这和laravel无关..

标签: php laravel function class


【解决方案1】:

类属性只能是静态值,所以你可以这样做:

public $a = '123';

但不是这个:

public $b = $_SERVER['foo'];

如果你想要后者,你必须在你的构造函数中明确地设置它:

public $b = null;
public function __construct()
{
    $this->b = $_SERVER['foo'];
}

在 PHP 的最新版本中(不确定此功能从哪里开始,可能是 v7.0),您还可以使用等同于静态值的表达式:

public $c = '123' . '456';

【讨论】:

    猜你喜欢
    • 2011-12-10
    • 2013-03-18
    • 1970-01-01
    • 2020-11-13
    • 2021-05-19
    • 1970-01-01
    • 1970-01-01
    • 2011-11-26
    • 2010-11-04
    相关资源
    最近更新 更多