【发布时间】:2012-09-02 17:37:15
【问题描述】:
我希望以这样的方式访问我的一些变量:
System->Config->URL
在本例中,“System”是我的核心类,“Config”是一个数组,“URL”是数组中的一个项目。这是我的“system.php”代码:
<?php
abstract class System {
public $Config;
public function __construct() {
$this->Config = (object) array('URL' => 'localhost');
}
}
echo System->Config->URL;
?>
当我运行上面的代码时,我只看到了这个:
Parse error: syntax error, unexpected '->' (T_OBJECT_OPERATOR), expecting ',' or ';'
这是指出我的echo 行。
现在,如果我消除抽象的想法,并使用这个,效果很好!
<?php
class System {
public $Config;
public function __construct() {
$this->Config = (object) array('URL' => 'localhost');
}
}
$System = new System();
echo $System->Config->URL;
?>
我也尝试过混淆static 和abstract 关键字,但这也没有用。我什至放弃了__construct 函数并创建了一个非常普通的方法,名为'Ready',但在定义类时仍然无法调用abstract。
有人知道这里出了什么问题吗?我已经看到类似的代码效果很好。
任何帮助或想法将不胜感激!
【问题讨论】:
-
你的类是抽象的,不是在第一个例子中启动的。
-
好的,谢谢!我以为它不需要初始化! :D
标签: php oop constructor abstract-class abstract