我在數據庫的一行中存儲了一個JSON數據數組,並試圖檢索數組以便在foreach循環中使用。PHP PDO從數據庫中檢索json數組 - 刪除不需要的字符
下面的代碼是我將用於foreach循環的代碼,但我有一些麻煩,實際上是使用PDO根據需要檢索數據。
$data = '[{"id":"H592736029375"},{"id":"K235098273598"},{"id":"B039571208517"}]';
$array = json_decode($data, true);
foreach($array as $data){
echo $data['id'];
}
我遇到的問題是檢索陣列投入使用$data
PDO。目前我有這個查詢和代碼,其輸出如下。
$statement = $this->db_connection->prepare("SELECT gp FROM gs WHERE c_s= :c_s");
$statement->bindParam(':c_s', $c_s);
$statement->execute();
$data = $statement->fetchAll();
$result = json_encode($data, true);
return $result;
混合用下面的代碼來顯示數組:
foreach ($result as $key) {
echo $key['id'];
}
print_r($result);
die();
這爲針對每個錯誤,並輸出陣列(不可用)如下:
[{"gp":"[{\"id\":\"H592736029375\"},{\"id\":\"K235098273598\"},{\"id\":\"B039571208517\"}]","0":"[{\"id\":\"H592736029375\"},{\"id\":\"K235098273598\"},{\"id\":\"B039571208517\"}]"}]
作爲我有的第一部分代碼,我可以根據需要使用這些數據我只需要一些關於如何從數據庫中正確獲取數組然後在foreach中使用的指導。
我知道,我目前使用json_encode代替json_decode,使用json_decode提供了以下錯誤:
Warning: json_decode() expects parameter 1 to be string, array given
建議我的錯誤,將不勝感激
感謝錯字改正:) –