PHP类$ _SERVER变量属性

med*_*edk 4 php properties class

我正在开发一个类,我有这个结构:

class userInfo {
    public $interval        = 60;
    public $av_langs        = null;

    public $ui_ip           = $_SERVER['REMOTE_ADDR'];
    public $ui_user_agent   = $_SERVER['HTTP_USER_AGENT'];

    public $ui_lang         = null;
    public $ui_country      = null;

    // non-relevant code removed
}
Run Code Online (Sandbox Code Playgroud)

但是在执行脚本时我收到此错误:

解析错误:语法错误,第12行的D:\ web\www\poll\get_user_info\get_user_info.php中的意外T_VARIABLE

当我将2 $ _SERVER变量更改为简单字符串时,错误消失了.

那么$ _SERVER在声明类属性时会出现什么问题?

谢谢

Chr*_*ton 11

使用此代码作为指南:

public function __construct() {
    $this->ui_ip = $_SERVER['REMOTE_ADDR'];
    $this->ui_user_agent = $_SERVER['HTTP_USER_AGENT'];
}
Run Code Online (Sandbox Code Playgroud)


OZ_*_*OZ_ 5

可以仅使用值而不是表达式声明属性.
您可以创建__construct()方法,您可以以任何方式初始化属性.