<?php $input = "data1a; data2a; data3a; data4a; data5a; data6a; data7a; ----- data1b; data2b; data3b; data4b; data5b; data6b; data7b; ----- data1b; data2b; data3b; data4b; data5b; data6b; data7b;"; //$data = array_map(function($row) {return array_filter(array_map("trim", explode(';', $row)), function($val){return !empty($val);});}, explode('-----', $input)); function($row) { return $row; }, $data);
Standard input is empty
array (
0 =>
array (
0 => 'data1a',
1 => 'data2a',
2 => 'data3a',
3 => 'data4a',
4 => 'data5a',
5 => 'data6a',
6 => 'data7a',
),
1 =>
array (
0 => 'data1b',
1 => 'data2b',
2 => 'data3b',
3 => 'data4b',
4 => 'data5b',
5 => 'data6b',
6 => 'data7b',
),
2 =>
array (
0 => 'data1b',
1 => 'data2b',
2 => 'data3b',
3 => 'data4b',
4 => 'data5b',
5 => 'data6b',
6 => 'data7b',
),
)