簡體   English   中英

如何將json解析為php

[英]how to parse json into php

我有一個從數據庫檢索的json數據,即

$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);
這給了我結果
  [{{“ fish_id”:“ 1”,“ name”:“第一次魚類更新”,“ info”:“這是我第一次魚類更新”,“ image”:“ http:\\ / \\ / www.localhost \\ / cafe \\ / pics \\ / logout(1).gif“}” 

但是從另一個頁面,當我調用此json數據即

  $ input = file_get_contents(“ http://localhost/fish/fish-json.php”);\n $ JSON = json_decode($輸入);\n echo $ json-> fish_id; 

它給我錯誤

  注意:嘗試在第13行的/var/www/fish/json-to-php.php中獲取非對象的屬性調用堆棧:0.0005 318764 1. {main}()/ var / www / fish / json-to -php.php:0 

是一個對象數組,所以

echo $json[0]->fish_id;

循環播放

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

嘗試

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

嘗試echo $json['fish_id']; 我可能會懷疑它將其轉換為數組

首先嘗試:

echo $json;

檢查您是否有有效的json。 最終,未執行fish-json.php中的php。

默認情況下,json_decode返回一個stdClass對象。 您必須為此功能提供第二個參數TRUE。

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

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM