=WeekDay([ApptDate]))
像这样。
类Day Appts
Monday 10
Tuesday 16
Thursday 5
Saturday 9
Totals: 4 40
只有<?php
class ser {
public $a;
}
$x = new ser;
$x->b = 10;
var_dump($x);
属性,但我们可以将ser
设置为此类的新对象,尽管此类没有任何$a
属性,但它仍可正常工作
输出
$b
为什么会这样?
为什么我们可以添加属性并将其设置为此类,而它不属于此类?
这怎么可能,为什么可能呢?
任何目的?是否有可能实现这一目标?
答案 0 :(得分:3)
这就是PHP所说的“this page”。这与几乎任何其他面向对象语言中的重载都不同。
如果您不喜欢它,如果设置了不存在的属性,您可以使用__set
魔术方法抛出异常:
public function __set($name, $value) {
throw new \Exception('Property "'.$name.'" does not exist')
}
您可以从文档的评论中看出这个“功能”的普遍共识是什么。