更改YII cactiverecord型号的特定符号';s属性
如何更改YII cactiverecord模型属性的特定符号? 不明白为什么它不起作用:更改YII cactiverecord型号的特定符号';s属性,yii,cactiverecord,Yii,Cactiverecord,如何更改YII cactiverecord模型属性的特定符号? 不明白为什么它不起作用: echo $model->attr; // aaa $model->attr[1] = 'b'; echo $model->attr; // aaa 使用substr\u replace功能: echo $model->attr; // aaa $model->attr = substr_replace($model->attr, 'b', 1, 1); echo $m
echo $model->attr; // aaa
$model->attr[1] = 'b';
echo $model->attr; // aaa
使用
substr\u replace
功能:
echo $model->attr; // aaa
$model->attr = substr_replace($model->attr, 'b', 1, 1);
echo $model->attr; // aba
您也可以使用这种方法:
$newValue = $model->attr[1] = 'b';
$model->attr = $newValue;
echo $model->attr; // aba
您的示例不起作用,因为实际上
$this->AttributeName
执行CActiveRecord::getAttribute('AttributeName')
,并且不影响原始值。回答得好。基本上,所有CActiveRecord属性都存储在一个数组中,并通过magic _get()和_set()函数进行访问。在这种情况下,使用括号访问字符串偏移量将不起作用。