3v4l.org

run code in 300+ PHP versions simultaneously
<?php $array = [ '46-sen1-Grid1-138', '47-sen2-Grid1-138', '50-sen5-Grid2-144', '51-sen6-Grid2-144' ]; $result = []; foreach ($array as $v) { [1 => $k, 0 => $result[$k][]] = preg_split('/-Grid\d+-/', $v); } var_export($result);
Output for 8.1.0 - 8.1.34, 8.2.0 - 8.2.30, 8.3.0 - 8.3.30, 8.4.1 - 8.4.18, 8.5.0 - 8.5.3
array ( 138 => array ( 0 => '46-sen1', 1 => '47-sen2', ), 144 => array ( 0 => '50-sen5', 1 => '51-sen6', ), )

preferences:
55.94 ms | 994 KiB | 4 Q