3v4l.org

run code in 300+ PHP versions simultaneously
<?php function rSplitReverse($string) { preg_match_all("/\(((?:(?>[^()]+)|(?R))*)\)/", $string, $matches); foreach ($matches[1] as &$m) { if (preg_match_all("/(\((?:(?>[^()]+)|(?R))*\))|[^(),]+/", $m, $items, PREG_SET_ORDER)) { $first = array_shift($items)[0]; foreach ($items as &$item) { $item = isset($item[1]) ? rSplitReverse($item[0]) : $item[0]; } $m = "$first," . implode(',', array_reverse($items)); } } return '(' . implode('),(', array_reverse($matches[1])) . ')'; } echo rSplitReverse('(X,1,1,3),(X,1,1,3),(X,@2,@2,@2,@2,@2,(Y,1))');
Output for 8.1.0 - 8.1.33, 8.2.0 - 8.2.29, 8.3.0 - 8.3.28, 8.4.1 - 8.4.14, 8.5.0
(X,(Y,1),@2,@2,@2,@2,@2),(X,3,1,1),(X,3,1,1)
Output for 8.4.15
/bin/php-8.4.15: /usr/lib/libm.so.6: version `GLIBC_2.38' not found (required by /bin/php-8.4.15) /bin/php-8.4.15: /usr/lib/libm.so.6: version `GLIBC_2.35' not found (required by /bin/php-8.4.15) /bin/php-8.4.15: /usr/lib/libc.so.6: version `GLIBC_2.34' not found (required by /bin/php-8.4.15) /bin/php-8.4.15: /usr/lib/libc.so.6: version `GLIBC_2.38' not found (required by /bin/php-8.4.15)
Process exited with code 1.

preferences:
90.45 ms | 407 KiB | 5 Q