嗨,这段代码应该将所有段放入一个数组中。
$dir = "../www.cms.actwebdesigns.co.uk2/logged.php";
#$dir = "../../logged.php";
$str = base64_encode(htmlspecialchars(preg_replace("#(?:\s\s+)|(?:\n)|(?:\t)|(?:\r)#", " ", file_get_contents($dir))));
$dataToAdd = array();
for($x=0; true; $x++)
{
if(preg_match("#(".base64_encode("<?php ").")((?!(".base64_encode("?> ").")).)*#is", $str, $match))
{
$dataToAdd[] = $match[0].base64_encode("?> ");
$PQmatch = preg_quote($match[0].base64_encode("?> "), "#");
$str = preg_replace("#".$PQmatch."#is", "", $str, 1);
}
else
{
break;
}
}
$z=1;
foreach($dataToAdd as $data)
{
echo "<xmp>".$z."----->>> ".base64_decode($data)."<br /></xmp>";
$z++;
}
//1----->>> <?php include("scripts/php/auth.php"); include("scripts/php/sessions.php"); ?><br />
//2----->>> <?php if($VERIFICATION!==1) { ?><br />
//3----->>> <?php echo $WEBSITE; ?><br />
//4----->>> <?php } ?> </p> </div> <div class="contentBlock"> <h2>ACT Web Designs Group</h2> <p><a href="http://www.actwebdesigns.co.uk" title="link to ACT Web Designs Home">www.actwebdesigns.co.uk</a><br /> <a href="http://hosting.actwebdesigns.co.uk" title="link to ACT Web Designs Hosting Solutions">www.hosting.actwebdesigns.co.uk</a> <a href="http://www.plugnplaycms.co.uk.co.uk" title="link to the home of plug n play cms">www.plugnplaycms.co.uk</a></p> </div> </div> <div id="mainBodyRight"> <?php if(isset($_GET['msg']) && !empty($_GET['msg'])) { echo "<div class=\"contentBlock\">\n"; echo "<h2>".$_GET['h2']."</h2>"; echo " <p style=\"color:".$_GET['color']."\">".$_GET['msg']."</p>\n"; echo "</div>\n"; } if($VERIFICATION==0) { issetJava("Your account needs verifying.", "javascript", "Authorisation", "red"); } elseif($VERIFICATION==1) { include("pageIncludes/install.php"); } elseif($VERIFICATION==2) { include("pageIncludes/mainPage.php"); } ?><br />
?>
最后一个输出 (4) 应该分成 4 或 5 个结果,但事实并非如此。没人知道为什么??