我有一个 php 程序,它查看日志文件并将其打印到页面(下面的代码)。我不希望所述网站的用户能够查看任何包含/
. 我知道我可以使用 trim 删除某些字符,但是有没有办法删除整行?例如,我想保留“Hello”之类的内容并删除/xx.xx.xx.xx connected
. 我希望删除的所有行都具有相同的公共键,/
. 所述日志文件中的人名<>
周围有 s,所以我必须使用htmlspecialcharacters
$file = file_get_contents('/path/to/log', true);
$file = htmlspecialchars($file);
echo nl2br($file);
谢谢你的帮助!
编辑:感谢所有答案,目前正在修补它们!
EDIT2:最终代码:
<?php
$file = file_get_contents('/path/to/log', true);
// Separate by line
$lines = explode(PHP_EOL, $file);
foreach ($lines as $line) {
if (strpos($line, '/') === false) {
$line = htmlspecialchars($line . "\n");
echo nl2br($line);
}
}
?>