<?php
echo "Normal match:\n";
preg_match('/two/', 'two', $match, PREG_UNMATCHED_AS_NULL);
var_dump($match);
echo "Unmatched $1 is always reported as null:\n";
preg_match('/(one)?two/', 'two', $match, PREG_UNMATCHED_AS_NULL);
var_dump($match);
preg_match('/two(three)?/', 'two', $match, PREG_UNMATCHED_AS_NULL);
var_dump($match);
preg_match('/(one)?(two)/', 'two', $match, PREG_UNMATCHED_AS_NULL);
var_dump($match);
echo "Unmatched $2 is also reported as null:\n";
preg_match('/(two)(three)?/', 'two', $match, PREG_UNMATCHED_AS_NULL);
var_dump($match);
preferences:
60.83 ms | 402 KiB | 5 Q