我是新来的OOP范例,所以这个问题可能有一个简单的解释...什么时候应该在PHP类中声明变量?
您是否总是需要在类中声明公共对象范围的变量?例如:
<?php
class TestClass
{
var $declaredVar;
function __construct()
{
$this->declaredVar = "I am a declared variable.";
$this->undeclaredVar = "I wasn't declared, but I still work.";
}
function display()
{
echo $this->declaredVar . "<br />";
echo $this->undeclaredVar;
echo "<br /><br />";
}
}
$test = new TestClass;
$test->display();
$test->declaredVar = "The declared variable was changed.";
$test->undeclaredVar = "The undeclared variable was changed.";
$test->display();
?>
在这段代码中,即使$declaredVar
是唯一声明的变量,$undeclaredVar
是一样访问和使用 - 它似乎表现得好像我已经宣布它为公众。
如果未声明的类变量总是可以像这样访问,那么先声明它们有什么意义?
所以这只是因为PHP真的宽恕未申报的变量的工作,对吗? – Andrew 2009-07-06 11:30:34
对。 PHP应该发出一个警告,尽管... place error_reporting(E_ALL);在文件的顶部。 – Stephan202 2009-07-06 11:35:57