我回到网络开发并以正确的方式重新学习PHP,而且我有一个非常愚蠢的问题,我应该能够解决但不能......
我试图基本上将基本网址值指定为类属性,然后使用该值分配给新的类属性。
class Endpoints {
protected $baseURL = 'https://api.com';
protected $baseAccountsURL = $this->baseURL . '/accounts';
}
我尝试直接访问$ baseURL,没有$ this->,但它也失败了。我更喜欢使用CONST,但是将CONST分配给其他CONST的能力在5.6之前不可用。我已经查看了PHP Class Properties页面并搜索了SO,但我来自Java背景,所以我的问题可能就是术语..和语法:p
提前致谢!
答案 0 :(得分: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';
}
但我认为第一个选择就是你需要的。