2015-09-17 62 views
0

數組這似乎是超級簡單,但對我來說它不是,我有以下方法:上按下任意一個對象包含相同的密鑰

public function addRadioButtonTab($groupName, $radioButtonTab) 
{ 
    $radioButtonTab   = new RadioButtonTab($radioButtonTab); 
    $this->radioButtonTabs[][$groupName] = $groupName; 
    $this->radioButtonTabs[][] = $radioButtonTab; 
} 

我想給$radioButtonTab推入同一陣列包含關鍵:$groupName

現在我得到兩個獨立的陣列,一個與key=>value和一個與對象。

+1

你是不是指'$ this-> radioButtonTabs [$ groupName] [] = $ radioButtonTab;'? –

+0

@RocketHazmat否則創建與'$ groupName'相同的密鑰,但是這次它的值是'$ radioButtonTab'對象。它需要:'[group_name => $ name,$ radioButtonTab]'not'[group_name => $ name],[group_name => $ radioButtonTab]' – TheWebs

回答

0

,而不是循環和做複雜的東西試試這個:

public function addRadioButtonTab($groupName, $radioButtonTab) 
{ 
    $radioButtonTab      = new RadioButtonTab($radioButtonTab); 
    $this->radioButtonTabs[][$groupName] = array($groupName, $radioButtonTab); 
} 
+0

'$ this-> radioButtonTabs [] [$ groupName]''真正有效的語法? –

+1

是的,這將創建一個關聯數組,並將其推送到下一個空閒單元格中的一個簡單數組。 (1){0} => array(1){ ['Rocket'] ='Hazmat'' ** ==> ** 'array = { [0] => > string(6)「Hazmat」 } }' –

+0

Neat!我不知道你可以這樣做:-) –

0

你應該讓你想第一個值的數組,然後附加,爲了$this->radioButtonTabs

public function addRadioButtonTab($groupName, $radioButtonTab) 
{ 
    $radioButtonTab = new RadioButtonTab($radioButtonTab); 

    // Just append arrays into the main array 
    $this->radioButtonTabs[] = array('group_name' => $groupName, $radioButtonTab); 

    // Or if you want your array to use `$groupName` as a key 
    $this->radioButtonTabs[$groupName] = array('group_name' => $groupName, $radioButtonTab) 
} 
相關問題