2012-05-03 43 views
0

我必須做的foreach數組:的foreach變量

Array 
(
    [0] => Array 
     (
      [name] => news_number 
      [value] => 10 
     ) 

) 

並獲得 「價值」 變量$值。我能做些什麼?

我有:

foreach($this->_config as $key){ 

foreach($key as $value['news_number'] => $key){ 

echo $key; 

} 

} 

,但並不好,我有 「news_number10」。

+0

輸出爲 「news_number10」? – Zuul

+0

因爲你只是一個接一個地迴應它,沒有換行或休息或任何事情。 – jeremyharris

回答

1

試試這個:

foreach($this->_config as $key => $data) 
{ 
    echo $data['name']." is ".$data['value']."\n"; 
} 

如果您正在尋找您的配置數據的一個特定的變量,你可以簡單地這樣做:

foreach($this->_config as $key => $data) 
{ 
    if ($data['name'] == 'news_number') 
    { 
     $myNewsNumber = $data['value']; 
     break; 
    } 
} 
+0

感謝工作,我很長一段時間不寫.. – zyeu

+0

再看一次,我需要具體的變量news_number和值 – zyeu

+0

檢查編輯。這應該把你需要的值放到$ myNewsNumber中。 –

1

或者嘗試:

foreach($this->_config as $data) 
{ 
    extract($data); 
    printf("%s is %s\n", $name, $value); 
} 
+0

工作過,提取功能:) – zyeu

0

難道你不能把它分配給數組嗎?

foreach($this->_config as $key){ 

foreach($key as $value[0] => $key){ 

echo $key; 

} 

} 

你打算只有一個值嗎?那麼只需將數組編號更改爲您希望在foreach中使用的數組。

+0

我有很多valuees其設置陣列 – zyeu

+0

但只有一個我需要兩個 – zyeu

0

嘗試

$this->_config = Array (
     0 => Array (
       'name' => "news_number", 
       'value' => 10 
     ) 
); 

foreach ($this->_config as $value) { 
    echo $value ['name'], " ", $value ['value']; 
} 

輸出

news_number 10 
+0

工作,但需要具體news_numer變量 – zyeu

+0

什麼你的意思是具體的news_number變量? – Baba

+0

我只需要發送從數組到變量不需要打印 – zyeu