2014-12-06 137 views
0

我重新回到了web dev并以正确的方式重新学习了PHP,并且我遇到了一个非常愚蠢的问题,我应该可以解决但是不能。 。将类成员变量初始化/分配给其他类成员变量

我想基本分配基本URL值作为一个阶级属性,然后使用该值分配到一个新的类属性..

class Endpoints { 

    protected $baseURL = 'https://api.com'; 
    protected $baseAccountsURL = $this->baseURL . '/accounts'; 

} 

我想直接访问$基本URL,而不$ this->,但它也失败了。我宁愿使用CONST,但是将CONST分配给其他CONST的能力在5.6之前将不可用。我已阅读PHP Class Properties页面,并且搜索到了,但是我来自Java背景,因此我的问题可能是术语..和语法:p

在此先感谢!

回答

1

您不能分配方式,你需要做的是在构造属性:

class Endpoints { 

    protected $baseURL = 'https://api.com'; 
    protected $baseAccountsURL; 

    public function __construct() 
    { 
     $this->baseAccountsURL = $this->baseURL . '/accounts'; 
    } 
} 

另外,这会工作:

class Endpoints { 

    protected $baseURL = 'https://api.com'; 
    protected $baseAccountsURL = 'https://api.com/accounts'; 

} 

但我认为,第一个选项是你需要什么。