3v4l.org

run code in 500+ PHP versions simultaneously
<?php $pattern = "/^(?<animal>DOG|CAT)?(?<color>BLUE|RED)?$/i"; $str = "DOG"; if (preg_match($pattern, $str, $matches)) { $matches = array_merge(array('animal' => '', 'color' => ''), $matches); $matches = array_filter($matches, 'is_string', ARRAY_FILTER_USE_KEY); print_r($matches); }
Output for 7.4.0 - 7.4.33, 8.0.1 - 8.0.30, 8.1.0 - 8.1.34, 8.2.0 - 8.2.30, 8.3.0 - 8.3.30, 8.4.1 - 8.4.21, 8.5.0 - 8.5.7
Array ( [animal] => DOG [color] => )

preferences:
88.74 ms | 1258 KiB | 4 Q