我需要对页面上的所有内容运行“preg_replace”,包括内部小部件内容、页眉页脚和所有其他显示的位置。如何运行页面上的所有输出?
我想替换页面上可能出现的所有坏词。我只是不知道如何搜索页面上的所有内容。
我需要对页面上的所有内容运行“preg_replace”,包括内部小部件内容、页眉页脚和所有其他显示的位置。如何运行页面上的所有输出?
我想替换页面上可能出现的所有坏词。我只是不知道如何搜索页面上的所有内容。
在您的整个内容上运行 preg_replace 在性能方面非常昂贵,我不确定该怎么想,但有一种方法可以做到。
最好的方法是使用输出缓冲区将所有内容放入一个变量中,然后随心所欲地摆弄它,然后输出最终结果。
它看起来像这样:
// starts the output buffer
ob_start();
// In your case this is where all the content output is going to go. This echo is just a sample
echo "badword\n";
// get all the buffered content output
$OB = ob_get_contents();
// clean the buffered content, and also end the output buffer
ob_end_clean();
// run a replace on all the buffered content, and echo it out
echo preg_replace("/badword/", "BEEP", $OB);