我有两个班级,一个班级另一个班级。
这是基类代码:
TestClassConst.php
class TestClassConst
{
const AUDIT_REJECT_REASON = [
0 => LoanAuditConstants::AUTO_REJECT_REASON_KEYWORD['not_exist_key']
];
public function __construct()
{
}
}
这是子类代码:
TestClassConstChild .php
class TestClassConstChild extends TestClassConst
{
public function testEcho() {
var_dump(2321312);
}
}
当我使用testEcho()
时,过程出错,这是我的期望:
:
但是当基类construct
函数添加参数($a
)时,例如:
class TestClassConst
{
const AUDIT_REJECT_REASON = [
0 =>
LoanAuditConstants::AUTO_REJECT_REASON_KEYWORD['not_exist_key']
];
public function __construct($a)
{
}
}
当我使用testEcho()
时,程序陷入无限循环,直到nginx
错误502错误的网关
我听不懂我怎么理解?是PHP错误?还是Laravel错误?
我的环境设置:是php7.1
,laravel5.5
答案 0 :(得分:0)
由于TestClassConstChild
没有自己的构造函数,因此它继承了其父级的构造函数。
父构造函数需要参数。如果您不提供它们,则脚本在到达您希望收到未定义索引警告的部分之前会死掉一个Fatal error: Too few arguments
。
我不知道您的Laravel如何设置,但是如果托管它本身,则意味着服务器快要死了,nginx
只是在报告事实。