2013-04-21 2 views
1

Ниже приведен пример формата многомерного массива Я имею дело с:многомерный массив Implode

Array ( 
    [1] => Array ([code] => PPJ3 [street] => 34412 Fake Street [city] => Detroit [state] => MI [zip] => 48223 [county] => Wayne [cost] => 432.00) 

    [2] => Array ([code] => PLK3 [street] => 73517 Fake Street [city] => Detroit [state] => MI [zip] => 48223 [county] => Wayne [cost] => 54.00) 

    [3] => Array ([code] => HYK2 [street] => 55224 Fake Street [city] => Detroit [state] => MI [zip] => 48208 [county] => Wayne [cost] => 345.00) 
) 

Я пытаюсь установить скрытое поле для только значения кода и он разделены запятой. Массив также должен быть зациклен, потому что он всегда будет меняться. Это то, что я хотел бы, чтобы это выглядело как:

$ myHiddenField = PPJ3, PLK3, HYK2

Что такое простой способ кодирования это?

ответ

2

до тех пор, как вы можете ссылаться на исходный массив ..

<?PHP 
$myHiddenField = array(); 
foreach($array as $row) { 
    $myHiddenField [] = $row['code']; 
} 
?> 

или для CSV

<?PHP 
foreach($array as $row) { 
    $myHiddenField .= ",".$row['code']; 
} 
$myHiddenField = substr($myHiddenField,1); 
?> 
0

Так что же случилось с использованием цикла?

$myHiddenField = ''; 
$c = count($array); 

for($i=0;$i<$c;$i++){ 
    if($i == $c -1){ 
    $myHiddenField .= $val['code']; 
    }else{ 
    $myHiddenField .= $val['code'].', '; 
    } 
} 

Если вы используете PHP 5.3+:

$tmp = array_map(function($v){return($v['code']);}, $array); 
$myHiddenField = implode(', ', $tmp); 
2

Там будет array_column функция PHP 5.5, вы будете в состоянии сделать это

$myHiddenField = implode(',', array_column($yourMainArray, 'code')); 

На данный момент у вас есть использовать свой собственный контур

$values = array(); 
foreach ($yourMainArray as $address) 
{ 
    $values[] = $address['code']; 
} 
$myHiddenField = implode(',', $values); 
Смежные вопросы