在存储阵列的情况下更改Yii CActiveRecord列属性值

时间:2016-12-13 19:05:57

标签: php yii yii-cactiverecord

我有CActiveRecord模型游戏 game_data 属性存储游戏数据。以这种方式我存储了数据(在beforeSave方法中):

$this->data = gzcompress(json_encode($this->data));

我以下列方式提取数据(在afterFind方法中):

$this->data = json_decode(gzuncompress($this->data), true);

之后我想用 game_data 属性(添加/更改/删除)进行操作,但代码为我返回了意外的结果。 代码和我的研究:

var_dump($this->data); // data that already stored in db for this game 
array(1) {
  ["provably_fair"]=>
  array(1) {
    ["server_seed"]=>
    string(32) "dKOsfTsGvmvZe0VW6bcFnIhJKXDesKeM"
  }
} 

我正在尝试添加新属性和值:

$this->data['provably_fair']['client_seed'] = $clientSeed;

$ this->数据的内容不会改变:

var_dump($this->data);
array(1) {
  ["provably_fair"]=>
  array(1) {
    ["server_seed"]=>
    string(32) "dKOsfTsGvmvZe0VW6bcFnIhJKXDesKeM"
  }
} 

如何修改此CActiveRecord属性的数据以及是否可以?

0 个答案:

没有答案