【发布时间】:2018-04-13 21:57:26
【问题描述】:
我来自一些 php 代码,我认为编写它的开发人员有点矛盾。 所以这是他写的代码:
if ($this->SQL !== null && $this->SQLState === self::STATE_CLEAN)
return $this->SQL;
SQLState 和 STATE_CLEAN 的定义如下:
class someClass {
const STATE_CLEAN = 1;
private $SQLState = self::STATE_CLEAN;
}
所以你可以看到,对于某些类属性,他使用 $this,而对于某些类属性,他使用 self::,我不明白为什么。 任何人都可以帮忙。谢谢
【问题讨论】:
-
不可能,因为我知道它们都是什么意思,我只是不明白这个具体情况。
-
我想我不明白你的问题。你能解释更多吗?
-
他故意同时使用 self:: 和 $this 而他可以使用 $this 来代替,实际上他不应该使用任何定义的属性是静态的吗?所以我认为要么他与他的代码不一致,要么他知道我不知道的事情
标签: php static static-methods