php - 不要与某些字符相呼应

标签 php

我有一个 php 程序,它查看日志文件并将其打印到页面(下面的代码)。我不希望该网站的用户能够查看任何包含 / 的行。 。我知道我可以使用修剪来删除某些字符,但是有没有办法删除整行?例如,我想保留“Hello”之类的内容并删除/xx.xx.xx.xx connected之类的内容。 。我想要删除的所有行都有相同的公共(public) key ,/ 。所述日志文件中的人名有 <>他们周围有,所以我必须使用 htmlspecialcharacters

$file = file_get_contents('/path/to/log', true);
$file = htmlspecialchars($file);
echo nl2br($file);

感谢您的帮助!

编辑: 感谢您的所有答案,目前正在修改它们!

编辑2: 最终代码:

<?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);
    }
}
?>

最佳答案

你的意思是像这样吗?

$file = file_get_contents('/path/to/log', true);

// Separate by line
$lines = explode(PHP_EOL, $file);

foreach ($lines as $line) {
    if (strpos($line, '/') === false) {
        // If the line doesn't contain a "/", echo it
        echo $line . PHP_EOL;
    }
}

对于任何想知道的人,PHP_EOLPHP “行结束”常量并促进不同系统(Windows、UNIX 等)之间的一致性。

关于php - 不要与某些字符相呼应,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18046646/

相关文章:

PHP 似乎无法识别 $this 变量

javascript - 使用 Javascript 对原始差异输出进行颜色处理

php - 从日期晚于今天的表中选择

javascript - 每个标记的 InfoBox (getElementById) – Google Maps API 3

php - 如何缩小php页面html输出?

php - Hostgator远程访问本地php文件中的数据库

php - 检查金额是否存在

php - 使用 PHPExcel 下载时获取损坏的 xls 文件

php - 如何使用 php 将数据存储在 cookie 中?

php - 没有连接关系时SQL返回左表