2012-07-30 79 views
1

我的PHP陣列(例如,print_r的轉儲)如何使用unkonwn關聯的名稱訪問PHP關聯數組

Array 
(
    [0] => Array 
     (
      [Nick] => Bobby 
      [FullName] => Bob Smith 
     ) 

    [1] => Array 
     (
      [Nick] => Mikey 
      [FullName] => Mike Smithers 
     ) 

) 

如果我不知道值「尼克」或「全名」我怎麼能訪問值在他們中。

該數組將具有兩個值,我期望知道如何訪問它們,如果我不知道它的名稱。

我想它打印出來(例如)

輸出例如好一會: 「價值之一就是博比值的兩個是Bob Smith」

,但我不知道[尼克]或[FullName]如何訪問「Bobbie」或「Bob Smith」(數組正在傳入)

謝謝。

+2

'foreach'循環的兩個例子應該做你需要的。 – Brad 2012-07-30 14:51:23

+1

更大的圖片問題:如果你不知道你在找什麼,你會如何知道你找到了它? – 2012-07-30 14:53:50

+0

@MarcB那是功夫嗎? – Matt 2012-07-30 14:56:18

回答

1
foreach($list as $array) { 
    foreach($array as $key => $value) { 
     echo "The value of {$key} is: {$value}"; 
    } 
} 
6
foreach ($my_arr as $key => $value) { 
    list($value_one, $value_two) = $value; 
    echo "Value one is $value_one value two is $value_two\n"; 
} 
+0

是的,但是如何獲得值「Nick」的自身? – user1283754 2012-07-30 14:53:45

+0

@ user1283754我用更準確的示例更新了答案。 – nickb 2012-07-30 14:54:11

+0

@nickb謝謝。 – 2012-07-30 14:54:58

1

如果你只是想獲得的值,你可以這樣做:

$values = array_values($my_arr); 

$values[0]; // the first value 
$values[1]; // the second value 
+0

+1好點 - 如果他不知道,也不在乎密鑰是什麼,那麼值應該會很好。 – ametren 2012-07-30 14:56:54

0

這裏有手柄....

<?php 
    $array = array(array("Bobbie"=>"Bobb", 
          "BobS"=>"BobbS"), 
        array("Foo"=>"Bar", 
          "Hello"=>"World") 
      ); 

     // Method No.1 
     foreach($array as $arr) { 
      foreach($arr as $key=>$val) { 
      echo $key."\n"; 
      } 
     } 
     // Method No.2 
     // you can use the function array_keys() to get the key-names 
     foreach($array as $arr) { 

     $keys = array_keys($arr); 
     echo "<h1>Keys:</h1><pre>".print_r($keys,1)."</pre>"; 
    } 
?> 
+0

非常有用的信息array_keys函數真的是一個很好的信息。感謝你分享它..當你不知道它是什麼時,這是/是問題理解和訪問元素的一部分。謝謝。好東西。 – user1283754 2012-07-30 15:10:55