From: Jared dot Williams1 at ntlworld dot com Operating system: Win2000 PHP version: 5.1.2 PHP Bug Type: Strings related Bug description: str_replace with arrays
Description: ------------ str_replace() not replacing entire search string with its replacement. Reproduce code: --------------- <?php $s = array ( 0 => '%host', 1 => '%login', 2 => '%user', 3 => '%time', 4 => '%method', 5 => '%url', 6 => '%protocol', 7 => '%status', 8 => '%bytesSent', 9 => '%referrer', 10 => '%userAgent', ); $r = array ( 0 => '([^ ])+', 1 => '([^ ])+', 2 => '([^ ])+', 3 => '([^\\]])+', 4 => '([^ ])+', 5 => '([^ ])+', 6 => '([^"])+', 7 => '([^ ])+', 8 => '([^ ])+', 9 => '([^"])+', 10 => '([^"])+', ); $subject = '%host %login %user [%time] "%method %url %protocol" %status %bytesSent "%referrer" "%userAgent"'; echo str_replace($s, $r, $subject), "\n"; Expected result: ---------------- ([^ ])+ ([^ ])+ ([^ ])+ [([^\]])+] "([^ ])+ ([^ ])+ ([^"])+" ([^ ])+ ([^ ])+ "([^"])+" "([^ ])+" Actual result: -------------- ([^ ])+ ([^ ])+ ([^ ])+ [([^\]])+] "([^ ])+ ([^ ])+ ([^"])+" ([^ ])+ ([^ ])+ "([^"])+" "([^ ])+Agent" -- Edit bug report at http://bugs.php.net/?id=36049&edit=1 -- Try a CVS snapshot (PHP 4.4): http://bugs.php.net/fix.php?id=36049&r=trysnapshot44 Try a CVS snapshot (PHP 5.1): http://bugs.php.net/fix.php?id=36049&r=trysnapshot51 Try a CVS snapshot (PHP 6.0): http://bugs.php.net/fix.php?id=36049&r=trysnapshot60 Fixed in CVS: http://bugs.php.net/fix.php?id=36049&r=fixedcvs Fixed in release: http://bugs.php.net/fix.php?id=36049&r=alreadyfixed Need backtrace: http://bugs.php.net/fix.php?id=36049&r=needtrace Need Reproduce Script: http://bugs.php.net/fix.php?id=36049&r=needscript Try newer version: http://bugs.php.net/fix.php?id=36049&r=oldversion Not developer issue: http://bugs.php.net/fix.php?id=36049&r=support Expected behavior: http://bugs.php.net/fix.php?id=36049&r=notwrong Not enough info: http://bugs.php.net/fix.php?id=36049&r=notenoughinfo Submitted twice: http://bugs.php.net/fix.php?id=36049&r=submittedtwice register_globals: http://bugs.php.net/fix.php?id=36049&r=globals PHP 3 support discontinued: http://bugs.php.net/fix.php?id=36049&r=php3 Daylight Savings: http://bugs.php.net/fix.php?id=36049&r=dst IIS Stability: http://bugs.php.net/fix.php?id=36049&r=isapi Install GNU Sed: http://bugs.php.net/fix.php?id=36049&r=gnused Floating point limitations: http://bugs.php.net/fix.php?id=36049&r=float No Zend Extensions: http://bugs.php.net/fix.php?id=36049&r=nozend MySQL Configuration Error: http://bugs.php.net/fix.php?id=36049&r=mysqlcfg
