我有一个抽象类,其中包含这样的__construct方法
SEARCH TABLE csv USING COVERING INDEX iin_idx (iin=?)
USING INDEX sqlite_autoindex_input_1 FOR IN-OPERATOR
然后在我的具体课程中,我扩展了抽象模型
abstract class Model
{
protected $attributes = [];
public function __construct(array $attributes = []) {
$this->$attributes = $attributes;
}
}
当我将属性转储到构造函数中时,我得到一个空数组,但是如果删除构造函数参数的默认值,则Pong模型具有属性。挑战在于,我希望能够构造具有默认值和没有默认值的具体类
class Pong extends Model
{
}
答案 0 :(得分:-1)
我制作了$attributes
public
,以显示结果。
请注意问号??
。
<?php
class Model
{
public $attributes = [];
public function __construct(array $attr = []) {
$this->attributes['msg'] = $attr['msg'] ?? "default";
$this->attributes['someValue'] = $attr['someValue'] ?? 'default';
}
}
class Pong extends Model
{
}
$pong = new Pong();
print_r($pong->attributes);
使用上面看到的code玩!