<?php
$records = [
'nonsense', 'f',
'h', 1, 2, 3, 4, 'f',
'nonsense',
'h', 1, 2, 'f',
'h', 1, 2, 3, 'f',
'nonsense',
'nonsense',
'nonsense',
'h', 1, 2, 3, 4, 'f',
'h', 1, 'f',
'nonsense'
];
$groups = [];
foreach ($records as $record) {
if ($record === 'h') {
$group = [];
}
$group[] = $record;
if ($record === 'f') {
$groups[] = $group;
}
}
var_dump($groups);
echo "\n------------------------------------------------------\n\n";
unset($group);
$groups = [];
foreach ($records as $record) {
if ($record === 'h') {
$group = [];
}
if (! isset($group)) {
continue;
}
$group[] = $record;
if ($record === 'f') {
$groups[] = $group;
unset($group);
}
}
var_dump($groups);
preferences:
41.95 ms | 402 KiB | 5 Q