--TEST-- Bug #61780 (Inconsistent PCRE captures in match results): named subpatterns --FILE-- 4)?(?2)?\d/', '23456', $matches, PREG_UNMATCHED_AS_NULL); var_export($matches); echo "\n\n"; preg_match('/(?4)?(?2)?\d/', '23456', $matches, PREG_OFFSET_CAPTURE | PREG_UNMATCHED_AS_NULL); var_export($matches); echo "\n\n"; preg_match_all('/(?4)?(?2)?\d/', '123456', $matches, PREG_UNMATCHED_AS_NULL); var_export($matches); echo "\n\n"; preg_match_all('/(?4)?(?2)?\d/', '123456', $matches, PREG_OFFSET_CAPTURE | PREG_UNMATCHED_AS_NULL); var_export($matches); echo "\n\n"; preg_match_all('/(?4)?(?2)?\d/', '123456', $matches, PREG_SET_ORDER | PREG_UNMATCHED_AS_NULL); var_export($matches); echo "\n\n"; preg_match_all('/(?4)?(?2)?\d/', '123456', $matches, PREG_SET_ORDER | PREG_OFFSET_CAPTURE | PREG_UNMATCHED_AS_NULL); var_export($matches); ?> --EXPECT-- array ( 0 => '23', 'a' => NULL, 1 => NULL, 'b' => '2', 2 => '2', ) array ( 0 => array ( 0 => '23', 1 => 0, ), 'a' => array ( 0 => NULL, 1 => -1, ), 1 => array ( 0 => NULL, 1 => -1, ), 'b' => array ( 0 => '2', 1 => 0, ), 2 => array ( 0 => '2', 1 => 0, ), ) array ( 0 => array ( 0 => '1', 1 => '23', 2 => '45', 3 => '6', ), 'a' => array ( 0 => NULL, 1 => NULL, 2 => '4', 3 => NULL, ), 1 => array ( 0 => NULL, 1 => NULL, 2 => '4', 3 => NULL, ), 'b' => array ( 0 => NULL, 1 => '2', 2 => NULL, 3 => NULL, ), 2 => array ( 0 => NULL, 1 => '2', 2 => NULL, 3 => NULL, ), ) array ( 0 => array ( 0 => array ( 0 => '1', 1 => 0, ), 1 => array ( 0 => '23', 1 => 1, ), 2 => array ( 0 => '45', 1 => 3, ), 3 => array ( 0 => '6', 1 => 5, ), ), 'a' => array ( 0 => array ( 0 => NULL, 1 => -1, ), 1 => array ( 0 => NULL, 1 => -1, ), 2 => array ( 0 => '4', 1 => 3, ), 3 => array ( 0 => NULL, 1 => -1, ), ), 1 => array ( 0 => array ( 0 => NULL, 1 => -1, ), 1 => array ( 0 => NULL, 1 => -1, ), 2 => array ( 0 => '4', 1 => 3, ), 3 => array ( 0 => NULL, 1 => -1, ), ), 'b' => array ( 0 => array ( 0 => NULL, 1 => -1, ), 1 => array ( 0 => '2', 1 => 1, ), 2 => array ( 0 => NULL, 1 => -1, ), 3 => array ( 0 => NULL, 1 => -1, ), ), 2 => array ( 0 => array ( 0 => NULL, 1 => -1, ), 1 => array ( 0 => '2', 1 => 1, ), 2 => array ( 0 => NULL, 1 => -1, ), 3 => array ( 0 => NULL, 1 => -1, ), ), ) array ( 0 => array ( 0 => '1', 'a' => NULL, 1 => NULL, 'b' => NULL, 2 => NULL, ), 1 => array ( 0 => '23', 'a' => NULL, 1 => NULL, 'b' => '2', 2 => '2', ), 2 => array ( 0 => '45', 'a' => '4', 1 => '4', 'b' => NULL, 2 => NULL, ), 3 => array ( 0 => '6', 'a' => NULL, 1 => NULL, 'b' => NULL, 2 => NULL, ), ) array ( 0 => array ( 0 => array ( 0 => '1', 1 => 0, ), 'a' => array ( 0 => NULL, 1 => -1, ), 1 => array ( 0 => NULL, 1 => -1, ), 'b' => array ( 0 => NULL, 1 => -1, ), 2 => array ( 0 => NULL, 1 => -1, ), ), 1 => array ( 0 => array ( 0 => '23', 1 => 1, ), 'a' => array ( 0 => NULL, 1 => -1, ), 1 => array ( 0 => NULL, 1 => -1, ), 'b' => array ( 0 => '2', 1 => 1, ), 2 => array ( 0 => '2', 1 => 1, ), ), 2 => array ( 0 => array ( 0 => '45', 1 => 3, ), 'a' => array ( 0 => '4', 1 => 3, ), 1 => array ( 0 => '4', 1 => 3, ), 'b' => array ( 0 => NULL, 1 => -1, ), 2 => array ( 0 => NULL, 1 => -1, ), ), 3 => array ( 0 => array ( 0 => '6', 1 => 5, ), 'a' => array ( 0 => NULL, 1 => -1, ), 1 => array ( 0 => NULL, 1 => -1, ), 'b' => array ( 0 => NULL, 1 => -1, ), 2 => array ( 0 => NULL, 1 => -1, ), ), )