2017-09-19 36 views
-2

我是PHP新手任何人都可以幫我解析JSON。Php如何解析Json

這是我的數據。我想獲得'transaction_details'數組下的狀態。

Array (
    [status] => 1 
    [msg] => 1 out of 1 Transactions Fetched Successfully 
    [transaction_details] => Array (
     [3685189ee69337520311] => Array (
      [mihpayid]   => 403993715516628289 
      [request_id]   => 
      [bank_ref_num]  => 3808401291372621 
      [amt]    => 51000.00 
      [transaction_amount] => 51000.00 
      [txnid]    => 3685189ee69337520311 
      [additional_charges] => 0.00 
      [productinfo]  => OasisEstate 
      [firstname]   => Test 
      [bankcode]   => CC 
      [udf1]    => 
      [udf3]    => 
      [udf4]    => 
      [udf5]    => 
      [field9]    => SUCCESS 
      [error_code]   => E000 
      [card_type]   => VISA 
      [error_Message]  => NO ERROR 
      [net_amount_debit] => 51000 
      [disc]    => 0.00 
      [mode]    => CC 
      [PG_TYPE]   => HDFCPG 
      [card_no]   => 401200XXXXXX1112 
      [name_on_card]  => Neeraj 
      [udf2]    => 
      [addedon]   => 2017-09-19 13:23:58 
      [status]    => success 
      [unmappedstatus]  => captured 
      [Merchant_UTR]  => 
      [Settled_At]   => 0000-00-00 00:00:00 
     ) 
    ) 
) 

在此先感謝您。

+0

你需要通過這個數組JSON或從它那裏得到的值? –

+0

您可以使用任何循環來獲取數組中的細節。 –

+1

請說明,這不是json,也不是php的var_export(沒有逗號) – Jakumi

回答

1

你不需要JSON時,你已經有一個數組

只使用$array['transaction_details']

+1

$ array ['status']是一個字符串,而不是數組 – zerokavn

2

嘗試以下操作:

回聲$陣列[ 'transaction_details'] [3685189ee69337520311] [」狀態']

+0

事實上,$ array ['transaction_details'] ['status']是undefined – zerokavn

+0

更新了我的文章 –

0

我想你的轉儲來自var $ json:

<?php 
foreach($json['transaction_details'] as $key => $details) { 
    echo 'status for ' . $key .': ' . $details['status']; 

} 
?> 

我用foreach來克服不知道數組鍵的問題。正如我想象的關鍵將是不同的,每收到JSON消息

+0

不是最好的,但這是正確的。 – zerokavn

0

array_pop()可以幫助

$item = array_pop($array['transaction_details']); 
echo $item['status']; 
+0

這不提供問題的答案。要批評或要求作者澄清,請在其帖子下方留言。 - [來自評論](/ review/low-quality-posts/17376220) – FluffyKitten

+0

r開玩笑吧? =)) – zerokavn

+0

你的答案被社區標記爲低質量(注意它被添加「來自評論」)。你說「array_pop()*可能*幫助」 - 因此這是一個建議,而不是一個完整和完整的答案。如果您有理由相信這會起作用,請編輯您的答案以解釋爲什麼 - 僅提供代碼答案是因爲他們沒有解釋他們如何解決問題中的問題。請回顧[我如何寫一個好答案](https://stackoverflow.com/help/how-to-answer) – FluffyKitten