网站访客详情

时间:2017-04-18 22:29:31

标签: php

我制作了一个PHP代码,可以在txt文件中记录访问者的IP地址,端口,日期,浏览器名称。但它并没有在顶部显示最新的访客详情。因此,每次我需要向下滚动以查看用户详细信息。有没有办法在log.txt文件的顶部显示访问者详细信息,所以我不必每次都向下滚动?这是完整的PHP代码:

<?php
    $protocol = $_SERVER['SERVER_PROTOCOL'];
    $ip = $_SERVER['REMOTE_ADDR'];
    $port = $_SERVER['REMOTE_PORT'];
    $agent = $_SERVER['HTTP_USER_AGENT'];
    $ref = $_SERVER['HTTP_REFERER'];
    $hostname = gethostbyaddr($_SERVER['REMOTE_ADDR']);
    $dateTime = date('Y/m/d G:i:s');

    $fh = fopen('log.txt', 'a');
    fwrite($fh, 'IP Address: '."".$ip ."\n");
    fwrite($fh, 'Hostname: '."".$hostname ."\n");
    fwrite($fh, 'Port Number: '."".$port ."\n");
    fwrite($fh, 'User Agent: '."".$agent ."\n");
    fwrite($fh, 'HTTP Referer: '."".$ref ."\n");
    fwrite($fh, 'Date: '."".$dateTime ."\n\n");
    fclose($fh);
    ?> 

2 个答案:

答案 0 :(得分:3)

这里的关键是fopen函数的第二个参数。

查看http://php.net/manual/en/function.fopen.php

您正在使用:

$fh = fopen('log.txt', 'a');

一种手段..

  

仅供写作;将文件指针放在文件的末尾。如果该文件不存在,请尝试创建它。在这种模式下,fseek()无效,写入总是附加。

您可以选择所需的任何选项。

例如,r +表示:

  

开放阅读和写作;将文件指针放在文件的开头。

希望这有帮助。

答案 1 :(得分:0)

你可以:

  1. $toFile = IP; $toFile .= file_get_contents('log.txt'); file_put_contents('log.txt', $toFile );
  2.   

    如果您不想将文件的全部内容加载到变量中,可以使用PHP的Streams功能: