|
php.net | support | documentation | report a bug | advanced search | search howto | statistics | random bug | login |
PatchesPull RequestsHistoryAllCommentsChangesGit/SVN commits
[2007-09-15 19:17 UTC] jana dot vasseru at gmail dot com
[2007-09-15 19:31 UTC] scottmac@php.net
|
|||||||||||||||||||||||||||
Copyright © 2001-2025 The PHP GroupAll rights reserved. |
Last updated: Fri Oct 24 13:00:02 2025 UTC |
Description: ------------ On certain data preg_replace() returns empty string. The code below works correctly on PHP 5.1.6 Reproduce code: --------------- <?php $data = file_get_contents('src.sql'); echo strlen($data).'<br>'; $data = preg_replace("#INSERT\\sINTO([\\s\\S]*?)INSERT\\sINTO#", "\$DELTA_SCRIPT[] = 'INSERT INTO\\1'; \$DELTA_SCRIPT[] = 'INSERT INTO", $data); $data = preg_replace("#CREATE\\sTABLE([\\s\\S]*?)[^']INSERT\\sINTO#", "CREATE TABLE \\1 \$DELTA_SCRIPT[] = 'INSERT INTO", $data); echo strlen($data); //returns 0 here ?> Expected result: ---------------- Return whatever but empty string. Actual result: -------------- Returns empty string.