AR查询返回数据类型问题? [ 2.0 版本 ]
使用AR查询出来的数据int类型的数据,也变成string了。
怎么让他根据数据库的类型返回!在线等,还挺急的 !
@sjg20010414 按你的代码操作一遍,结果和你结果不同。是有什么配置导致这个问题? 但是我都是默认配置没有增加什么啊。get了一下版本是最新版本的2.0.13-dev。
最佳答案
-
sjg20010414 发布于 2017-10-11 12:16 举报
CREATE TABLE
tbl_temp
(
id
int(11) NOT NULL,
name
varchar(64) NOT NULL,
value
int(10) UNSIGNED NOT NULL,
count
int(10) UNSIGNED NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;$model1 = \app\models\Temp::find()->asArray()->one(); var_dump($model1); $model2 = \app\models\Temp::find()->one(); $a = \yii\helpers\ArrayHelper::toArray($model2); var_dump($a); echo \yii\helpers\Json::encode($a);
/home/x201/PhpstormProjects/myblog/views/site/index.php:25:
array (size=4)
'id' => string '1' (length=1)
'name' => string 'aaa' (length=3)
'value' => string '123' (length=3)
'count' => string '456' (length=3)
/home/x201/PhpstormProjects/myblog/views/site/index.php:28:
array (size=4)
'id' => int 1
'name' => string 'aaa' (length=3)
'value' => int 123
'count' => int 456{"id":1,"name":"aaa","value":123,"count":456}
没有遇到楼主的问题啊,楼主怎么试出来的?
共 1 条回复
其他 2 个回答
-
sjg20010414 回答于 2017-10-12 10:38 举报
很多问题,还是要靠自己一步步来诊断
你先你的代码 $model1 = TblTemp::find()->one(); 一句下面加
var_dump($model1->attributes);
看看模型实例的属性类型是否符合预期,再来考虑是你的版本AR类被修改了还是ArrayHelper助手类被修改了(我的版本是 Yii2 version 2.0.8)共 1 条回复
Jason_ 阿联酋
最后登录:2023-03-09
在线时长:106小时40分
- 粉丝15
- 金钱8250
- 威望0
- 积分9310