Yii2余波。使用changedAttributes显示错误
我的Yii2模型的余波函数有一个奇怪的错误 当我这么做的时候Yii2余波。使用changedAttributes显示错误,yii2,yii2-model,Yii2,Yii2 Model,我的Yii2模型的余波函数有一个奇怪的错误 当我这么做的时候 public function afterSave($insert, $changedAttributes) { parent::afterSave($insert, $changedAttributes); if(!$insert): print_r($changedAttributes);exit; $this->prepareMail(self::MAIL_APPROVE);
public function afterSave($insert, $changedAttributes) {
parent::afterSave($insert, $changedAttributes);
if(!$insert):
print_r($changedAttributes);exit;
$this->prepareMail(self::MAIL_APPROVE);
;
}
我明白了
但当我这么做的时候
public function afterSave($insert, $changedAttributes) {
parent::afterSave($insert, $changedAttributes);
if(!$insert):
$status = $changedAttributes['status']; // this line shows error
if($status == Self::STATUS_CONFIRMED):
$this->prepareMail(self::MAIL_APPROVE);
;
;
}
$status=$changedAttributes['status'];这一行显示错误
错误为“未定义索引:状态”
我没有看到什么?使用以下行:
if(!$insert):
$status = isset($changedAttributes['status']) ? $changedAttributes['status'] : 0); // this line shows error
if($status == Self::STATUS_CONFIRMED):
$this->prepareMail(self::MAIL_APPROVE);
;
;
$changedAttributes包含修改字段的旧值,但仅包含修改字段,如果存在“isset”跳过错误,则有效。尝试扩展
$changedAttributes->status代码>@Inaseskull错误:“试图获取非对象的属性”。另外,Doc表示其数组。您在数组中未获得状态
………您的数组无效,表示未定义的偏移量。是否可能多次调用afterSave()?一次没有身份?
if(!$insert):
$status = isset($changedAttributes['status']) ? $changedAttributes['status'] : 0); // this line shows error
if($status == Self::STATUS_CONFIRMED):
$this->prepareMail(self::MAIL_APPROVE);
;
;