如何使用PHP获取json解码数组值

时间:2017-02-20 09:51:48

标签: php arrays json

我需要一个帮助。我需要使用PHP在foreach循环中获取json解码值。我在下面解释我的代码。

    $user_qry = "http://oditek.in/takeme/webservice/user2/user_ride_list_v2.php";
$pstflds="mobile=".$mobile;
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $user_qry);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $pstflds);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$response=curl_exec ($ch);
$data=json_decode($response,true);
$bikeArr=$data->data;
print_r($bikeArr);exit;

它提供如下输出。

Array ( [0] => stdClass Object ( [book_id] => 161117193881 [booking_status] => 4 [book_date] => 17-11-2016 [book_time] => 07:38 PM ) [1] => stdClass Object ( [book_id] => 161116183564 [booking_status] => 4 [book_date] => 16-11-2016 [book_time] => 06:35 PM  ) )

我需要在foreach循环中迭代上面的数组并获取数据。请帮助我。

3 个答案:

答案 0 :(得分:0)

尝试

$data=json_decode($response,true);

你将获得assoc数组而不是object

答案 1 :(得分:0)

json_decode参数2是assoc

当为TRUE时,返回的对象将被转换为关联数组。

默认为false

参考http://php.net/manual/en/function.json-decode.php

json_decode($response, true);

答案 2 :(得分:0)

你可以尝试一下,看看你是否有任何错误吗?

foreach($bokeArr as $bike){
 echo 'book id = ' . $bike->book_id;
}