php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Doc Bug #16590 Problems with strings containing \x00
Submitted: 2002-04-13 13:06 UTC Modified: 2002-05-24 15:20 UTC
From: daniel at lorch dot cc Assigned:
Status: Closed Package: Documentation problem
PHP Version: 4.1.2 OS: Linux
Private report: No CVE-ID: None
View Developer Edit
Welcome! If you don't have a Git account, you can't do anything here.
If you reported this bug, you can edit this bug over here.
(description)
Block user comment
Status: Assign to:
Package:
Bug Type:
Summary:
From: daniel at lorch dot cc
New email:
PHP Version: OS:

 

 [2002-04-13 13:06 UTC] daniel at lorch dot cc
The PCRE has problems with strings containing 0x00. It stops reading as if the strings were \0 terminated. This affects all preg_* functions.

Examples:

  preg_match("/\x00/", "foo");
  preg_match("/" . chr(0) . "/", "foo");

Raises the error "Warning: No ending delimiter '/' found"

Patches

Pull Requests

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2002-04-13 13:23 UTC] daniel@php.net
Actually, I'm not sure whether this problem can be solved as it is PCRE and not a PHP specific (and it can't be solved without breaking compatibilty with languages using 0 terminated strings such as C).

I'm thinking about making it a documentation problem. What do you guys think?

-daniel
 [2002-04-13 15:59 UTC] sander@php.net
The docs state that PCRE is binary safe. So this might be a bug after all...
 [2002-04-13 16:27 UTC] jimw@php.net
pcre is binary safe with regards to the string being matched against, but not the pattern. this is a limitation of the pcre library itself, not just the php interface. you can specify the nul character using:

preg_match("/\\x00/", "foo\0bar")

reclassified as documentation problem.
 [2002-05-24 15:20 UTC] derick@php.net
This bug has been fixed in CVS. You can grab a snapshot of the
CVS version at http://snaps.php.net/. In case this was a documentation 
problem, the fix will show up soon at http://www.php.net/manual/.
In case this was a PHP.net website problem, the change will show
up on the PHP.net site and on the mirror sites.
Thank you for the report, and for helping us make PHP better.


 
PHP Copyright © 2001-2024 The PHP Group
All rights reserved.
Last updated: Thu Nov 21 20:01:29 2024 UTC