簡體   English   中英

如何從數組/ json結構中的鍵中回顯特殊值

[英]How to echo special value from key in array/json structure

我可以輕松瀏覽json例如:

foreach($json_a['somwhere'][1]['somwhere_deeper'] as $something){
    var_dump($something);
}

此代碼使我可以打印如下內容:

C:\wamp64\www\dothejob.php:7:
array (size=2)
  'name' => string 'John' (length=17)
  'value' => string '15' (length=4)
C:\wamp64\www\dothejob.php:7:
array (size=2)
  'name' => string 'Joanna' (length=6)
  'value' => string '23' (length=2)
C:\wamp64\www\dothejob.php:7:
array (size=2)
  'name' => string 'John' (length=17)
  'value' => string '55' (length=10)
C:\wamp64\www\dothejob.php:7:
array (size=2)
  'name' => string 'Joanna' (length=11)
  'value' => string '55' (length=5)

所以我確定我來對地方了,但是現在的問題是如何只打印數組中的值,名字叫Joanna?

我知道這應該很容易,如果If語句,但是我不確定這些鍵/值如何工作,這是一個簡單的問題,但是我是php ... :) ps的初學者。 我一直在尋找幫助,但尚未找到解決方案。

不能使用$ something [n],因為它們始終不在同一個“位置”上,因此只有正確的解決方案是這樣的:

我正在尋找這樣的東西:

if 'name' is 'Joanna':
print value of 'value'

您可以使用$something[n]因為您有一個關聯數組:

foreach($json_a['somwhere'][1]['somwhere_deeper'] as $something){
    if ($something['name'] == 'Joanna') {
        var_dump($something);
    }
}

輸出應為:

C:\wamp64\www\dothejob.php:7:
array (size=2)
  'name' => string 'Joanna' (length=6)
  'value' => string '23' (length=2)
C:\wamp64\www\dothejob.php:7:
array (size=2)
  'name' => string 'Joanna' (length=11)
  'value' => string '55' (length=5)

當然,如果只想var_dump ,請使用var_dump($something['value'])

您需要更新Variable的命名慣例

foreach($json_a['somwhere'][1]['somwhere_deeper'] as $key => $value){
    echo $key." : ".$value
}

以上代碼的輸出將類似於John:15 Johnna:23

foreach(array as key => value)
{
 //key represent array key
//value represent value of that array
}

如有任何疑問,請通知我。

暫無
暫無

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

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