2011-10-14 40 views
0

我想通過循環以下多元數組來將所有員工的工資存儲爲$ salary數組。從多維數組中獲取值並存儲到關聯數組中

任何人都可以幫助我嗎?謝謝!

<?php 
$employees["employee 1"]["name"] = "Dana"; 
$employees["employee 1"]["title"] = "Owner"; 
$employees["employee 1"]["salary"] = "$60,000"; 

$employees["employee 2"]["name"] = "Matt"; 
$employees["employee 2"]["title"] = "Manager"; 
$employees["employee 2"]["salary"] = "$40,000"; 

$employees["employee 3"]["name"] = "Susan"; 
$employees["employee 3"]["title"] = "Cashier"; 
$employees["employee 3"]["salary"] = "$30,000"; 
?> 
+0

,你知道如何循環,你知道如何訪問數組的元素。你有什麼問題?特別是,你正在尋找一個foreach循環。 – Corbin

回答

1

下面的代碼可以幫助你:

$salary = array(); 
foreach ($employees as $key => $value) { 
    $salary[$key] = $value['salary']; 
} 
0
foreach ($employees as $employee) { 
    foreach ($employee as $var => $val) { 
    $$var[$employee] = $val; 
    } 
} 

然後,你應該有三個陣列,$name$title$salary

+1

不是他要求的。 (編輯:另外,我傾向於在可能的情況下避免使用變量變量,它們比普通變量更模糊,並且它們很少用於數組不適合的目的。) – Corbin

1

你可以做到這一點像下面的代碼。

foreach($employees as $key =>$values){ 
    $emp[$key]['name'] = $values['name']; 
    $emp[$key]['sal'] = $values['salary']; 
} 

echo '<pre>'; 
print_r($emp); 

出認沽將是:

Array 
(
    [employee 1] => Array 
     (
      [name] => Dana 
      [sal] => $60,000 
     ) 

    [employee 2] => Array 
     (
      [name] => Matt 
      [sal] => $40,000 
     ) 

    [employee 3] => Array 
     (
      [name] => Susan 
      [sal] => $30,000 
     ) 

) 

謝謝..根據您的問題