我有一个functions.php
文件,其中包含许多需要包含在类中的变量和函数。我之前没有使用过OO PHP,我遇到了最简单的问题。为了解释的目的,我提出了一个简单的案例:
class MyTestClass
{
public $isTest = true;
public $isLocalhost = ($_SERVER["HTTP_HOST"] == "localhost");
}
我收到此错误:
解析错误:语法错误,第8行的......意外'$ _SERVER'(T_VARIABLE)
第一行(public $isTest = true;
)似乎工作正常。在课外,这很好用:$isLocalhost = ($_SERVER["HTTP_HOST"] == "localhost");
是否可以在类属性中执行评估?实现我想要做的最简单的方法是什么?
答案 0 :(得分:1)
您可以在类中创建访问修饰符,如下所示
class MyTestClass
{
public $isTest;
public $isLocalhost;
function __construct() {
$this->isTest = true;
$this->isLocalhost = ($_SERVER["HTTP_HOST"] == "localhost")?$_SERVER["HTTP_HOST"]:'';
}
}
$MyTestClass= new MyTestClass();
echo $MyTestClass->isLocalhost; // Output : localhost
如果变量具有公共关键字,则可以在课外访问。