开发者

how to parse json into php

i have a json data retrieved from data base i.e

$result=array();
$query="SELECT * FROM fish";
$result1 = mysql_query($query, $conn);
while ($table = mysql_fetch_array($result1, MYSQL_ASSOC)){
   $result[]=$table;
}
   echo json_encode($result);
and this give me the result
[{"fish_id":"1","name":"first fish update","info":"this is my first fish update","image":"http:\/\/www.localhost\/cafe\/pics\/logout (1).gif"}]

but from another page when i call this json data i.e

$input = file_get_contents("http://localhost/fish/fish-json.php");
$json=js开发者_如何学Pythonon_decode($input);
echo $json->fish_id;

it give me the error

Notice: Trying to get property of non-object in /var/www/fish/json-to-php.php on line 13 Call Stack: 0.0005 318764 1. {main}() /var/www/fish/json-to-php.php:0


Is an array of object, so

echo $json[0]->fish_id;

To loop

if (!is_array($json)) die('...');
foreach ($json as $key=>$fish)
{
  echo $fish->fish_id;
}


Try

$input = file_get_contents("http://localhost/fish/fish-json.php");
$json=json_decode($input);
echo $json['fish_id'];


try echo $json['fish_id']; i might suspect it convert it to an array


try this first:

echo $json;

to check if you got valid json. Eventually, the php in fish-json.php was not executed.


By default json_decode returns an stdClass object. You have to give a second parameter for this function TRUE.

$json=json_decode($input, TRUE);
echo $json[0]['fish_id'];
0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜