#48196 [Opn]: Reproducible bug in string concatenation after calling preg_match_all

From: Date: Fri, 08 May 2009 23:26:19 +0000
Subject: #48196 [Opn]: Reproducible bug in string concatenation after calling preg_match_all
References: 1  Groups: php.bugs 
Request: Send a blank email to php-bugs+get-137008@lists.php.net to get a copy of this message
ID: 48196 Updated by: felipe@php.net Reported By: saulo_gil at argentina dot com Status: Open Bug Type: PCRE related Operating System: Windows XP PHP Version: 5.3.0RC2 New Comment: I can't reproduce it. Previous Comments: ------------------------------------------------------------------------ [2009-05-08 20:33:55] saulo_gil at argentina dot com Description: ------------ If I try to perform a simple concatenation involving a variable created from the matches output of preg_match_all() the resulting string is borked. Please see the code above. What I want to do: echo "[" . $var . "]"; Reproduce code: --------------- <? function foo($s) { preg_match_all("/PROCEDURE (.*)/i", $s, $matches); $name = (string) $matches[1][0]; echo $name . "\n"; return "[" . $name . "]"; } $s = "use providers go ALTER PROCEDURE SPD_EXECUTIVE_PROVIDER_DEALER ( @EXECUTIVE_PROVIDER_ID KEY_ID, @USER_SESSION_ID ID ) /* Procedimiento : SPD_EXECUTIVE_PROVIDER_DEALER"; echo foo($s); ?> Expected result: ---------------- [SPD_EXECUTIVE_PROVIDER_DEALER] Actual result: -------------- ]SPD_EXECUTIVE_PROVIDER_DEALER ------------------------------------------------------------------------ -- Edit this bug report at http://bugs.php.net/?id=48196&edit=1

« previous php.bugs (#137008) next »