首页 > 后端开发 > php教程 > mysql - PHP使用PDO库查询数据库除了NULL所有字段都返回的是字符串

mysql - PHP使用PDO库查询数据库除了NULL所有字段都返回的是字符串

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
发布: 2016-06-06 20:28:48
原创
1096 人浏览过

返回的数组值都是字符串

[
    "id" => "4231",
    "status" => "2"
]
登录后复制
登录后复制

这个问题让我很困惑,因为这样的数据转换成json后全部都变成了字符串,虽然理论上说,数据全字符串是比较安全的,但是对接强类型语言的时候会很难搞。

有什么解决方案吗?_(:3」∠)_

回复内容:

返回的数组值都是字符串

[
    "id" => "4231",
    "status" => "2"
]
登录后复制
登录后复制

这个问题让我很困惑,因为这样的数据转换成json后全部都变成了字符串,虽然理论上说,数据全字符串是比较安全的,但是对接强类型语言的时候会很难搞。

有什么解决方案吗?_(:3」∠)_

设置一下PDO的属性

<code>$pdo->setAttribute(PDO::ATTR_EMULATE_PREPARES, false);</code>
登录后复制

就可以了

无解。除非自己强制类型。输出的时候自己格式化。

function format($arr) {
    $arr['id'] = (int)$arr['id'];
    $arr['status'] = (int)$arr['status'];
    return json_encode($arr);
}
echo format(['id'=>'111','status'=>'2']);
登录后复制
相关标签:
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
pdo安装
来自于 1970-01-01 08:00:00
0
0
0
数据库pdo连接问题
来自于 1970-01-01 08:00:00
0
0
0
$pdo->exec($sql);为什么总是返回false
来自于 1970-01-01 08:00:00
0
0
0
PHP PDO预定义常量
来自于 1970-01-01 08:00:00
0
0
0
PDO查询数据错误
来自于 1970-01-01 08:00:00
0
0
0
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板