我无法访问数组的特定索引,我想访问数组的第三个索引,该索引实际上保存了用户的邮政编码,以便在 SELECT 语句中使用它。这是数组:$zip_code = connecting::query('SELECT zipcode FROM accounts WHERE username=:user_name', array(':user_name' => $user_name));$zipcode = json_encode($zip_code, true);这是我打印时的输出$zipcode:[{"zipcode":"28262","0":"28262"}]但是当我打印 $zipcode[2] 时没有打印任何内容,我无法使用它。我不能像那样直接访问它吗?我已经使用 json_encode、var_export、implode 等尝试将其转换为字符串,但它不起作用。这是我调用的查询方法:public static function query($query,$params = array()){ $statement = self :: db()->prepare($query); $statement->execute($params); if(explode(' ',$query)[0] == 'SELECT') { $data = $statement->fetchAll(); return $data; }}
1 回答
鸿蒙传说
TA贡献1865条经验 获得超7个赞
fetchAll返回数组数组。所以,如果你print_r(zip_code);会看到类似的东西:
Array (
[0] => Array (
[zipcode] => 28262
[0] => 28262
)
)
所以,正如你所看到的 - 这里没有带索引的键2,只有0在外部数组和两个键0以及zipcode子数组中。
此外,如您所见,您的数据 ( 28262) 在不同键下的子数组中重复。为避免这种情况,您可以提供以下参数fetchAll:
$data = $statement->fetchAll(PDO::FETCH_ASSOC);
- 1 回答
- 0 关注
- 106 浏览
添加回答
举报
0/150
提交
取消