轉換步驟:1、使用array_reduce()函數將二維數組轉為一維數組,語法“array_reduce(二維數組, 'array_merge', array())”,會傳回一個包含二維數組中所有元素值的一維數組;2、使用implode()函數將一維數組轉為字串即可,語法「implode("分隔符號",一維數組)」。
本教學操作環境:windows7系統、PHP8.1版、DELL G3電腦
在PHP中,可以使用array_reduce()函數和implode()函數來將二維數組轉為字串。
實作步驟:
步驟1:使用array_reduce()函數將二維陣列轉為一維陣列
array_reduce() 函數將陣列中的值傳送到使用者自訂函數,並傳回字串。
array_reduce(array,myfunction,initial)
參數 | 描述 |
---|---|
#array | 必要。規定數組。 |
myfunction | 必要。規定函數的名稱。 |
initial | 可選。規定發送到函數處理的第一個值。 |
只需要使用array_reduce()呼叫array_merge()函數即可將二維數組轉換為一維數組
$result = array_reduce($user, function ($result, $value) { return array_merge($result, array_values($value)); }, array())
因為array_merge函數會把相同字串鍵名的陣列覆蓋合併,所以必須先用array_value取出值後再合併。
如果第二維是數字鍵名,那麼直接這樣就可以了:
$result = array_reduce($user, 'array_merge', array())
會傳回一個包含二維數組中所有元素值的一維數組,範例:
array(100, 'a1'), 'b' => array(101, 'a2'), 'c' => array(102, 'a3'), 'd' => array(103, 'a4'), 'e' => array(104, 'a5'), ); echo "原二维数组:"; var_dump($user); $result = array_reduce($user, 'array_merge', array()); echo "转为一维数组后:"; var_dump($result); ?>
步驟2:使用implode()函數將一維數組轉為字串
implode() 函數可以將一個一維數組轉換為字串,其語法格式如下:
implode([$glue,]$array)
$glue 用來設定字串,表示使用$glue 將數組每個元素連接在一起,默認情況下$glue 為空字串;
$array 為需要轉換的陣列。
說明:implode() 函數的 $glue 參數是可選的,可以省略;預設連接符號是 ""(空字串)。
array(100, 'a1'), 'b' => array(101, 'a2'), 'c' => array(102, 'a3'), 'd' => array(103, 'a4'), 'e' => array(104, 'a5'), ); echo "原二维数组:"; var_dump($user); $result = array_reduce($user, 'array_merge', array()); echo "转为一维数组后:"; var_dump($result); echo "转为字符串后:"; var_dump(implode("",$result)); var_dump(implode("-",$result)); var_dump(implode(" ",$result)); ?>
推薦學習:《PHP影片教學》
以上是php怎麼將二維數組轉為字串的詳細內容。更多資訊請關注PHP中文網其他相關文章!