首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >网站访客详情

网站访客详情
EN

Stack Overflow用户
提问于 2017-04-18 22:29:31
回答 2查看 201关注 0票数 1

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

代码语言:javascript
复制
<?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);
    ?> 
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-04-18 22:32:41

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

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

您正在使用:

代码语言:javascript
复制
$fh = fopen('log.txt', 'a');

一个手段..。

打开仅供写入;将文件指针放在文件的末尾。如果文件不存在,请尝试创建它。在这种模式下,fseek()没有任何效果,写总是附加在后面。

你可以选择你想要的任何选项。

例如,r+的意思是:

打开以进行读写;将文件指针放在文件的开头。

希望这能有所帮助。

票数 4
EN

Stack Overflow用户

发布于 2017-04-18 22:36:54

您可以:

  1. $toFile = IP; $toFile .= file_get_contents('log.txt'); file_put_contents('log.txt', $toFile );
  2. 如果不想将文件的全部内容加载到变量中,可以使用特性:
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43483257

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档