2014-10-29 59 views
-4

我有一個陣列打印這樣的:訪問PHP數組內

array(2) { 
    ["systems"]=> 
    array(5) { 
    [1]=> 
    string(1) "1111" 
    [2]=> 
    string(1) "2222" 
    [3]=> 
    string(1) "3333" 
    [4]=> 
    string(1) "4444" 
    [5]=> 
    string(1) "5555" 
    } 
    ["test"]=> 
    string(2) "on" 
} 

現在,我想進入每家每戶內在價值與使用的foreach或將與代碼打交道的任何代碼。

我的意思是,例如,我想呼應出這樣的事情:

System "1" has "1111" value. 
System "2" has "2222" value. 
System "3" has "3333" value. 
System "4" has "4444" value. 
System "5" has "5555" value. 

我怎樣纔能有輸出代碼?

+0

@馬克我一直在使用foreach循環真的盡力了,但我每次都得到了錯誤的每臺。 – user3394468 2014-10-29 14:44:07

+0

你有什麼錯誤? – dyachenko 2014-10-29 14:44:52

+3

@ user3394468分享你的代碼和你的錯誤信息會更好,所以我們可以幫助你解決你遇到的問題,並幫助你理解你做錯了什麼。這是非常喜歡「爲我工作」的問題。 – Mark 2014-10-29 14:45:22

回答

3

試試這個:

$array = array(
    'systems' => array(
     1 => 1111, 
     2 => 2222, 
     3 => 3333, 
     4 => 4444, 
     5 => 5555 
    ), 
    'test' => 'on' 
); 

foreach ($array['systems'] as $key => $value) { 
    echo 'System "' . $key . '" has "' . $value . '" value.'."<br />\n"; 
} 

如果你對你的變量名是$array

+0

Tnx,但我有兩個錯誤:1-警告:非法字符串偏移'系統'2-警告:爲foreach提供的無效參數() – user3394468 2014-10-29 14:46:39

+0

檢查我編輯的帖子。我想,你的陣列沒有'系統'鍵。 – vaso123 2014-10-29 14:49:32

+0

我又有這個錯誤!你知道問題是什麼嗎? – user3394468 2014-10-29 18:43:03

2

如下所示。

foreach ($array as $key => $subarray){ 
    foreach ($subarray as $name => $value){ 
     echo '<p>'.$key.' "'.$name.'" has "'.$value.'" value.</p>'; 
    } 
} 
0
foreach ($array['systems'] as $key1 => $value1) { 
     echo "SYSTEM".$key1."has".$value1."value"; 
     echo "<br>"; 

    } 
+0

你爲什麼要循環訪問數組的其餘部分? – vaso123 2014-10-29 15:13:13

+0

是的,我們可以通過循環第一個來完成。 – Pritesh 2014-10-29 15:32:30