我有一个像这样的数组
$arr1 = array(
'0' => '674534856|213123213|232313123',
'1' => '349578449|782374879|232313123'
);
我遍历arr1数组,
for ($x=0; $x < $count; $x++) {
$check = explode("|", $arr1[$x]);
array_pop($check);
$count_check = count($check);
for ($z=0; $z < $count_check; $z++) {
array_push($result, $check[$z]);
}
}
它没有按预期工作。任何帮助赞赏。感谢。
编辑 $result
是结果数组
答案 0 :(得分:2)
只需implode()
输入数组中的所有内容都使用相同的分隔符将其展平为单个字符串,然后使用该分隔符explode()
:
$result = explode('|', implode('|', $arr1));
答案 1 :(得分:0)
尝试
$result = explode('|', join('|', $arr1));
// outputs
array('674534856', '213123213', '232313123', '349578449', '782374879', '232313123')
或者
$result = array_map(function($temp) { return explode('|', $temp); }, $arr1);
// outputs
array(
[0] => array('674534856', '213123213', '232313123'),
[1] => array('349578449', '782374879', '232313123')
)