大家好,我有一个关于PHP中对象构造的快速问题。我目前正在使用 Zend 框架制作一个小型测试应用程序,以熟悉 Zend 的做事方式。但是,我遇到了一个我不熟悉的错误。在我的控制器中,我创建对象$student如下所示:
$student = new Application_Model_Student();
但是,这样做会导致我的页面转储 500 错误并且没有调试输出。我这个模型的构造函数实际上什么都不做,只是打印出"Hello Creation"。这是我的模型代码:
<?php
class Application_Model_Student
{
protected $_lastName;
protected $_firstName;
protected $_email;
protected $_concentration;
protected $_yearEntered;
public function __construct()
{
print "Hello Creation";
}
}
?>
我的构造函数有问题吗?还是我所说的那样的东西?
我唯一能想到的是 autolader 找不到你的类并抛出异常; 导致 500 错误。
检查此问题的两种方法:
- 手动
include
文件 - 将实例化包装在
try{}catch{}
中以查看它是否是自动加载器
(实际上还有更多方法可以检查,但这是快速的两种(。
也不要费心关闭类文件中的?>
,从长远来看,它通常会有空格导致您的标题问题。
确保已将APPLICATION_ENV
设置为'development'
,以便可以看到错误消息。
如果仍然出现白屏,则此文件之前的代码中存在语法错误。 打开 error_reporting 并在 php.ini 文件中error_logging,然后查看创建的错误日志文件。