gpt4 book ai didi

php - Yii2:插入数据库时​​使用mysql AES_ENCRYPT

转载 作者:行者123 更新时间:2023-11-29 02:12:01 24 4
gpt4 key购买 nike

我遇到了以下错误:

AES_ENCRYPT method not found.

请帮助我在 YII2 中使用此 SQL 方法。

public function beforeSave($insert) {
if (!parent::beforeSave($insert)) {
return false;
}
if($insert) {
$this->created_at = date('Y-m-d H:i:s');
}
$this->updated_at = date('Y-m-d H:i:s');
$this->name = AES_ENCRYPT("'.$this->name.'", "SECERT KEY");
return true;
}

最佳答案

因为这样调用它

$this->name = AES_ENCRYPT("'.$this->name.'", "SECERT KEY");

将假设它是一个 php 方法,并会在可用的 php 函数中搜索,而您需要像为 CONCAT 一样运行它>、SUM 或任何其他 MYSQL 函数。

您应该按照以下方式将它与 \yii\db\Expression() 一起使用

$enc = new \yii\db\Expression('AES_ENCRYPT("'.$this->name.'","SECERT KEY")');
$this->name=$enc;

或简化它

$this->name=new \yii\db\Expression('AES_ENCRYPT("'.$this->name.'","SECERT KEY")');

希望对你有所帮助。

关于php - Yii2:插入数据库时​​使用mysql AES_ENCRYPT,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49448035/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com