Bug #13559: parser misinterprets ?> in a regexp
| From: | cech at debian dot org | Date: | Fri, 05 Oct 2001 09:50:43 +0000 |
| Subject: | Bug #13559: parser misinterprets ?> in a regexp | ||
| Groups: | php.dev | ||
| Request: | Send a blank email to php-dev+get-67329@lists.php.net to get a copy of this message | ||
From: cech@debian.org
Operating system: Debian
PHP version: 4.0.6
PHP Bug Type: *General Issues
Bug description: parser misinterprets ?> in a regexp
From Debian bug #114345
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=114345&repeatmerged=yes
When presented with a perfectly valid regular expression that contains ?>
in
it, these characters are confused with those used to close a block of php
code
in the html file.
Example:
// $article = preg_replace("/<([^>]*)(\s+[^>]*)?>/s",
// '',
// $article);
Even though this entire block is commented out, I still get a parse
error due to the ?> in the regexp.
The workaround seems to be use of the x modifier, and putting
whitespace between the ? and >, like so...
$article = preg_replace("/<([^>]*)(\s+[^>]*)? >/xs",
Mike
----------
P.S. cannot there be a mail reportin interface?
--
Edit bug report at: http://bugs.php.net/?id=13559&edit=1