PHP 4.0 Bug #8472 Updated: calling a function in a regular expression

From: Date: Mon, 08 Jan 2001 11:58:59 +0000
Subject: PHP 4.0 Bug #8472 Updated: calling a function in a regular expression
Groups: php.dev 
Request: Send a blank email to php-dev+get-43354@lists.php.net to get a copy of this message
ID: 8472 Updated by: cynic Reported By: simon.southwood@sportal.net Old-Status: Open Status: Closed Bug Type: *Regular Expressions Assigned To: Comments: This is a user error: # 34 + 5 = 39 print(image("34")); $pat="%image([0-9])%"; # "fdg" . ( "\\1" + 5 ) ... i. e. "fdg5" $rep="fdg".image("\\1"); # ereg_replace( "%image([0-9])%" , "fdg5" , $html ) $html=ereg_replace($pat, $rep, $html); Previous Comments: --------------------------------------------------------------------------- [2001-01-08 01:53:37] simon.southwood@sportal.net haven't tried 4.0.4, so i don't know. - will try to convince the admin here to upgrade ... --------------------------------------------------------------------------- [2001-01-05 23:21:01] sniper@php.net Have you tried PHP 4.0.4 ? Does this happen with it? --Jani --------------------------------------------------------------------------- [2000-12-29 05:18:54] simon.southwood@sportal.net oops $html=$html="<%image1%>some junk in here<%image2%>even more junk in here<%image3%>and some more for good measure<%image4%>"; --------------------------------------------------------------------------- [2000-12-29 04:53:38] simon.southwood@sportal.net function image($arrayRef) { $arrayRef += 5; return $arrayRef; } $html="<%image1%>some junk in here<%image2%>even more junk in here<%image3%>and some more for good measure<%image4%> print(image("34")); $pat="%image([0-9])%"; $rep="fdg".image("\1"); $html=ereg_replace($pat, $rep, $html); /* the function works fine if "$arrayRef += 5;" is commented out (it returns exactly whatever "\1" is. it also works fine when called with either a string or an integer as argument, called outside the regexp function. however, inside the regexp it always returns 5. i dunno if this is a bug, if not then i do apologise, and i'll find another way of doing this. */ --------------------------------------------------------------------------- Full Bug description available at: http://bugs.php.net/?id=8472

« previous php.dev (#43354) next »