我已经按照教程在
PHP中创建了一个简单的博客编写应用程序,并修改了本教程中的类,以便它们具有其他功能.修改这个非常简单的骨骼应用程序让我更好地理解PHP的工作方式,但是我遇到了一个有趣的情况.
我项目中的一个类有大约六个类属性,例如public $id,public $author,public $post.这些属性是在这个类的开头声明的,但是我发现如果删除除了其中一个属性之外的所有属性,应用程序仍然可以正常运行.
如果此类仍然将变量分配给此属性,如果从类的开头删除属性声明(例如public $datePosted)是错误的:$this-> datePosted = $someVariableName;
如果您尝试访问尚未声明的类属性,PHP将发出通知:
原文链接:https://www.f2er.com/php/138408.htmlclass Foo { } var $fu = new Foo(); echo $fu->baz;
Notice: Undefined property: Foo::$baz in blah.PHP on line 4
如果你先设置一个值($fu-> baz =’blah’)那么它就不会抱怨,但这不是一个好的情况.
你绝对应该声明你所有的类变量(除非你想要对magic methods有一些乐趣)…