【问题标题】:Read log file in /var/log with php使用 php 读取 /var/log 中的日志文件
【发布时间】:2012-06-28 08:02:25
【问题描述】:

如何使php可以读取/var/log/....中的日志文件

我试过这段代码,但没有用

<?php
    $file = "/var/log/smsd.log"; //gammu's sms log
    $data = file($file);

    $end = count($data);
    $first = $end-10;

    $number = range($first,$end);

    foreach($number as $n) {
        $log_data .= $data[$n]."\n";
    }

    echo $log_data;
?>

但是,如果我尝试使用此脚本读取同一文件夹中的文件,这是可行的。

【问题讨论】:

  • “不工作”不是错误信息,也不是问题描述。
  • 你应该先试试var_dump(is_readable($file));
  • gammu's sms log,你是不是想看别人的短信模式? :o
  • @PeeHaa 我不知道.. 我只是困惑。 file() 是不是无法读取系统文件?
  • @Teneff 没有结果。只是空白..

标签: php logging


【解决方案1】:

“但不工作”不是错误消息。检查你的配置has error reporting enabled.

很可能是权限问题。如何解决此问题取决于您的操作系统和管理日志文件的方式(但您可能会在 chmodlogrorate 手册页中找到答案)。

顺便说一句,如果必须读取非常大的文件,您的代码也会崩溃。考虑使用

<pre><?php
   passthru('tail -10 /var/log/smsd.log');
?></pre>

【讨论】:

  • 我不知道我的错在哪里。我使用与您的代码相同的代码,但不使用 passthru。我使用执行。并且网络没有停止加载。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2018-10-18
  • 1970-01-01
  • 1970-01-01
  • 2018-03-23
  • 1970-01-01
  • 1970-01-01
  • 2019-10-14
相关资源
最近更新 更多