public function groupsExtract($start = 'LIN', $barrier = array('UNS'))
{
$groups = array();
$group = array();
$position = 'before_search';
foreach ($this->getParsedFile() as $edi_row) {
$segment = $edi_row[0];
if ($position == 'group_is' && ($segment == $start || in_array($segment, $barrier))) {
// end of group
$groups[] = $group;
// start new group
$group = array();
$position = 'group_finish';
}
if ($segment == $start) {
$position = 'group_is';
}
// add element to group
if ($position == 'group_is') {
$group[] = $edi_row;
}
//echo $edi_row[0] . ' ' . $position . PHP_EOL;
}
return $groups;
}