yii createCommand 从数据库查出来的数据都变成了字符串格式 [ 2.0 版本 ]
最近用YII做一个后台项目, 因为要转化成json呈现出来,发现直接用php的 json_encode()直接转化createCommand()->
...出来的数据都变成了字符串格式,原本很普通的int也被加了引号.
ps: 自己手写数组就用json_encode()
就不会.
这个createCommand
官方文档也没说.
最佳答案
-
这个与YII没关系,是PDO的默认处理,解决方法只需在配置中的db配置中加上attributes的相关配置就行了,如下:
'components' => [ 'db' => [ 'class' => 'yii\db\Connection', 'dsn' => 'mysql:host=...', 'username' => '...', 'password' => '...', 'charset' => 'utf8', 'tablePrefix' => '', 'attributes' => [ PDO::ATTR_STRINGIFY_FETCHES => false, PDO::ATTR_EMULATE_PREPARES => false, ] ],
共 1 条回复1172112889 , bayern008haha 觉得很赞
其他 1 个回答
daowojia sz
注册时间:2015-02-02
最后登录:2019-04-23
在线时长:20小时29分
最后登录:2019-04-23
在线时长:20小时29分
- 粉丝3
- 金钱390
- 威望0
- 积分590