【发布时间】:2017-10-19 09:22:40
【问题描述】:
非常基本的问题,但找不到解决方案。
在包含一些值的表中,我尝试在 1 列中存储一个数组 (int[]) 并检索它。存储和搜索工作正常,但如果我选择它,我会在 php 中将其作为字符串获取。
餐桌周
col id (int) = 1
col days (int[]) = {1,1,1,1,1,0,0}
PHP
$query = SELECT id, days, manyother FROM week //array_to_json(days) does the same result
$pdo->setAttribute( PDO::ATTR_CASE, PDO::CASE_NATURAL );
$result = $pdo->query($query);
$test = $result->fetchAll(PDO::FETCH_ASSOC);
echo json_encode($test)
返回:
id: 1
days: "[1,1,1,1,1,0,0]"
manyother: ""
我确定我错过了 json_encode/decode 的一些内容 编辑:它不受 json_encode 的影响,我对其进行了调试,然后它返回了类似 '[1,1,1,1,1,0,0]' 的值。
编辑 2:找到了一个可行的解决方案,但将加载时间增加了 15* 倍:D 所以问题仍然存在,但我目前有一个解决方法。
foreach($test as $key => $value){
$test[$key]['days'] = json_decode($value['days']);
}
【问题讨论】:
标签: php arrays postgresql pdo