1

我正在尝试创建一个对象名称之间有空格的类。这样我就可以像这样访问它们:

$object->{'Var name with spaces'};

在这里阅读了这个主题,现在知道如何访问这些变量,但我不确定如何使用这些变量创建一个类。我已经尝试过这样的事情,但我无法让它工作:

class Hotel
{
    public ${'Var name with spaces'} = 'Some value'; // Fails
}

我将如何在包含空格的类定义中创建变量?

4

1 回答 1

9

我很确定您必须在构造函数中执行此操作,因为类属性不需要运行时评估。

class Hotel {
    public function __construct() {
        $this->{'Var name with spaces'} = 'Some value';
    }
}

你可以在这个演示中看到它的工作原理,但我认为这些评论已经充分说明了你为什么不应该这样做。:)

于 2012-08-07T13:08:23.387 回答