问题:比较这两段代码,为什么第一个输出什么都没有?
当我使用eclipse来运行这些代码时,什么都没有发生,我不知道它为什么不打印“构造正在运行”。PHP构造函数
然而,当我运行的代码,印刷第二款:
“将构建正在运行...”
“经理构建正在运行...”
为什么呢?
第一段:
<?php
class Employee
{
protected $name;
protected $title;
function _construct()
{
echo "The constrcut is running..." . '<br>'';
}
}
$employee = new Employee();
?>
第二款
<?php
class Employee
{
protected $name;
protected $title;
function _construct()
{
echo "The constrcut is running..." . '<br>'';
}
}
class Manager extends Employee
{
function __construct()
{
parent:: _construct();
echo "The Manager construct is running...";
}
}
$employee = new Manager();
?>
的构造函数应该有两个下划线是一样的所有其他魔术方法的前缀。只有最后一个构造函数有两个下划线。 – andho
@andho ??你的意思是? – Justin
我在两个代码中都看到了synthax错误,这显然不是您的原始测试。这应该运行一次并输出正确的结果。你的问题必须在你不知道的地方。 – Havenard