diff options
Diffstat (limited to 'ext/pcre')
| -rw-r--r-- | ext/pcre/TODO | 20 | ||||
| -rw-r--r-- | ext/pcre/php_pcre.c | 11 | 
2 files changed, 22 insertions, 9 deletions
| diff --git a/ext/pcre/TODO b/ext/pcre/TODO new file mode 100644 index 0000000000..1000c64105 --- /dev/null +++ b/ext/pcre/TODO @@ -0,0 +1,20 @@ +- Allow NULL for $matches argument (helps when using preg_match only for +  match condition) - might not be possible + +- http://bugs.php.net/bug.php?id=36975 + +- I'd love to see a pattern modifer which says "don't fill $matches except +  for the overall match and any specific named captures". This would allow +  (?: ...) to be avoided in a lot of cases. +   +  This could make for non-trivial speed enhancements with regexes that have +  a lot of parens when working on long strings, since you'd not have to   +  copy them multiple times to the $matches array. +   +  Also, it makes $matches much cleaner after a match where you've named the +  captures you're interested in. +   +  (Note that this would not involve the use of PCRE_NO_AUTO_CAPTURE, as +  that would change the semantics of backreferences) + + diff --git a/ext/pcre/php_pcre.c b/ext/pcre/php_pcre.c index 557898abf3..6cd6d27a29 100644 --- a/ext/pcre/php_pcre.c +++ b/ext/pcre/php_pcre.c @@ -18,13 +18,6 @@  /* $Id$ */ -/* - * TODO - * - * - Allow NULL for $matches argument (helps when using preg_match only for - *   match condition) - */ -  #ifdef HAVE_CONFIG_H  #include "config.h"  #endif @@ -1622,8 +1615,8 @@ PHP_FUNCTION(preg_grep)  zend_function_entry pcre_functions[] = {  	PHP_FE(preg_match,				third_arg_force_ref)  	PHP_FE(preg_match_all,			third_arg_force_ref) -	PHP_FE(preg_replace,			NULL) -	PHP_FE(preg_replace_callback,	NULL) +	PHP_FE(preg_replace,			fifth_arg_force_ref) +	PHP_FE(preg_replace_callback,	fifth_arg_force_ref)  	PHP_FE(preg_split,				NULL)  	PHP_FE(preg_quote,				NULL)  	PHP_FE(preg_grep,				NULL) | 
