|
php.net | support | documentation | report a bug | advanced search | search howto | statistics | random bug | login |
[2012-04-19 17:07 UTC] asersz at gmail dot com
Description: ------------ I am not good at english. A warning: preg_match(): Compilation failed: unknown option bit(s) set at offset 0 OS: MacOSX Lion 10.7.2 Web Server: apache 2 PHP : 5.4.0 PCRE (Perl Compatible Regular Expressions) Support: enabled PCRE Library Version: 8.02 2010-03-19 By the way: the php 5.4.0 released is stable or not ? thanks. Test script: --------------- <?php $r='/^(?P\w+)\/(?P\d+)\/$/u'; var_dump(preg_match($r,'test')); Expected result: ---------------- What does the warning mean ? The preg_match should be return 0 without warnings. Actual result: -------------- Warning: preg_match(): Compilation failed: unknown option bit(s) set at offset 0 in /Users/zhangyowei/Web/lieqee/test.php on line 4 bool(false) PatchesPull RequestsHistoryAllCommentsChangesGit/SVN commits
|
|||||||||||||||||||||||||||
Copyright © 2001-2025 The PHP GroupAll rights reserved. |
Last updated: Tue Nov 18 11:00:01 2025 UTC |
Works here: glopes@nebm:~/php/php-src$ php -v PHP 5.3.10-dev (cli) (built: Feb 2 2012 11:31:13) Copyright (c) 1997-2012 The PHP Group Zend Engine v2.3.0, Copyright (c) 1998-2012 Zend Technologies glopes@nebm:~/php/php-src$ php <?php $r='/^(?P<foo>\w+)\/(?P<bar>\d+)\/$/u'; var_dump(preg_match($r,'test/3423/',$m), $m); int(1) array(5) { [0]=> string(10) "test/3423/" ["foo"]=> string(4) "test" [1]=> string(4) "test" ["bar"]=> string(4) "3423" [2]=> string(4) "3423" } I suspect that, if anything, this has been an PCRE change. Try recompiling PHP with the bundled PCRE (--with-pcre-regex=BUNDLED, if I'm not mistaken).