[英]Php build array from comma separated array values
我有一個數組,其中一些數組值包含多個用逗號分隔的值,如下所示。
$a = array( '0' => 't1,t2', '1' => 't3', '2' => 't4,t5' );
我需要以下格式的輸出。
Array ( [0] => t1 [1] => t2 [2] => t3 [3] => t4 [4] => t5 )
這是如何嘗試並獲得結果的方法。 有沒有其他其他方法,而無需循環兩次。
$arr_output = array(); foreach($a as $val) { $temp = explode(',', $val); foreach($temp as $v) { $arr_output[] = $v; } }
謝謝。
$array = Array (
"t1,t2",
"t3",
"t4,t5"
);
$splitted = array_map (function ($a) {return explode (",", $a);}, $array);
$arr = array_reduce($splitted, function ($a, $b) {
return array_merge($a, (array) $b);
}, []);
print_r ($arr);
首先,您用逗號分隔每個字符串。 您將得到一個數組數組。 要合並它們,請調用合並函數,例如本示例中的array_reduce函數。
首先將您的舊數組轉換為字符串,
$old_array = array ( "t1,t2", "t3", "t4,t5" );
至
$string = implode(",", $old_array);
現在
echo $string;
給出一個帶有逗號分隔符的字符串,現在使用此字符串可以獲得所需的數組
$new_array = explode(",", $string);
如果您打印此,您將得到
Array(
[0] => t1
[1] => t2
[2] => t3
[3] => t4
[4] => t5)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.