- var_export: documentation ( source)
- explode: documentation ( source)
<?php
$array = [
"prefix1 foo",
"prefix2 bar",
"prefix1 aaa",
"prefix2 bbb",
"prefix3 ccc",
"prefix1 111",
"prefix2 222"
];
foreach ($array as $v) {
[$prefix, $value] = explode(' ', $v, 2);
if (isset($batch[$prefix])) {
$result[] = $batch;
$batch = [$prefix => $value];
} else{
$batch[$prefix] = $value;
}
}
$result[] = $batch;
var_export($result);