【发布时间】:2016-06-23 12:30:21
【问题描述】:
给定一个类:
class SomeClass{
static $information = 'useful information';
}
我试图访问一组 php 类中的静态变量。每个类都有 $information 静态变量。如果我直接访问静态变量
echo SomeClass::$information;
程序输出信息,但是如果我尝试访问它并将其存储在一个变量中,我会收到一个错误,即“::”是意外的。
$class = SomeClass;
echo $class::$information;
将类存储在变量中的原因是我可以拥有一个可以创建用户数组或项目数组的函数。
【问题讨论】:
-
为什么需要将类存储在变量中?这会给你带来什么。
-
写一个静态函数
static function getInformation(){return $self::$information;}因为 '::' 是意外的。static function getInformation{return $self->$information;}也没有,因为 $self 是非对象。 -
一个可以创建多个类的实例的函数。例如创建用户数组或项目数组
-
我认为问题出在我使用 PHP 5.3 的服务器这一事实中,所以我正在迁移项目以查看是否能解决问题并允许这些解决方案发挥作用。