上面的代码工作正常:
<?php
function clearPage($content, $class) {
$arr = array(
'@^(.*?)<div class="'.$class.'">(.*?)</div>(.*?)$@i' => '<div class="'.$class.'">$2</div>'
);
return preg_replace(array_keys($arr), array_values($arr), $content);
}
$class = "something";
$content = "31xu1823y8<div class="something">Wanted</div>912u38u3"
$result = clearPage($content, $class);
echo $result;
?>
这输出:
<div class="something">Wanted</div>
但我想制作可变内容,成为网站页面的 html 代码。所以我将最后一个代码更改为:
$class = "something";
$content = file_get_contents('index.php');
$result = clearPage($content, $class);
echo $result;
This outputs all the webpage! Why!?