2015-01-09 41 views
-1

這是我的代碼:array_push成多維陣列(附加一個值到小區)

$cars = array(
    array("Volvo" , '22,18,'), 
    array("BMW" , '15,13'), 
    array("Saab", '5,2'), 
    array("Land Rover", '17,15') 
); 

print_r($cars); 

這是輸出:

Array ([0] => Array ([0] => Volvo [1] => 22,18,) [1] => Array ([0] => BMW [1] => 15,13) [2] => Array ([0] => Saab [1] => 5,2) [3] => Array ([0] => Land Rover [1] => 17,15)) 

我想要動態值壓入(例如)該多維數組內部的字符串數值,但不覆蓋已存在的單元格(與追加到字符串$ string。= $ string。'+ Extra Content'相同);

例如,這是原始數據L:

array("Volvo" , '22,18,'), 

讓我們添加'21 ' 後來 讓我們添加'27' 後來 讓我們添加'14,」

動態地根據特定的細胞。

所以在一天結束的時候這將是:

array("Volvo" , '22,18,21,27,14,') 

這可能嗎?與註釋解釋它一步一步

+0

'$汽車[測試0] [1]。= '21,';','$ cars [0] [1]。= '27,';','$ cars [0] [1]。= '14,'; ? – Sean 2015-01-09 22:27:35

+1

數組中的字符串值的行爲與單獨變量中的字符串值完全相同,因此您可以執行完全相同的操作。究竟是什麼問題,你有什麼嘗試? – jeroen 2015-01-09 22:27:45

+0

OMG這麼簡單,但爲什麼這不起作用=== >>> $ cars ['Volvo'] [1]。= '21,'; ?? – iprophesy 2015-01-09 22:31:09

回答

0

樣品溶液(對於PHP> = 5.5) 對於PHP < 5.5可以使用array_walk組合

<?php 

$cars = array(
    array("Volvo" , '22,18,'), 
    array("BMW" , '15,13'), 
    array("Saab", '5,2'), 
    array("Land Rover", '17,15') 
); 

print_r($cars); 

$labels = array_column($cars, 0); // Get list of car manufacturers PHP>=5.5 
$labels = array_map(function($element){return $element[0];}, $cars); // Get list of car manufacturers PHP 4+ 
$id = array_search('Volvo', $labels); // Find id of 'Volvo' 
$cars[$id][1].='21,'; //append value 
$cars[$id][1].='27,'; //append value 

print_r($cars); 

其中u能在ideone

+0

好人,但array_column只能在PHP 5.5> – iprophesy 2015-01-10 01:20:27

+0

好吧。我爲php添加了解決方案<5.5 – mleko 2015-01-10 07:43:08