Php 将用户活动保存到文本文件

Php 将用户活动保存到文本文件,php,Php,在PHP中,我希望将消息保存到文本文件中,并使用PHP读取日志文件 以下是我到目前为止的情况: function LogUserActivity($LogFile, $Activity){ $UserIp = $_SERVER['REMOTE_ADDR']; $TimeRef = date('d-m-Y H:i T'); $Handle = fopen($LogFile, 'a'); $Data = $UserIp.'|'.$TimeRef.'|'.$Activ

在PHP中,我希望将消息保存到文本文件中,并使用PHP读取日志文件

以下是我到目前为止的情况:

function LogUserActivity($LogFile, $Activity){
    $UserIp = $_SERVER['REMOTE_ADDR'];
    $TimeRef = date('d-m-Y H:i T');

    $Handle = fopen($LogFile, 'a');
    $Data = $UserIp.'|'.$TimeRef.'|'.$Activity.'~';
    fwrite($Handle, $Data);
    fclose($Handle);
}

function ReadUserActivity($LogFile){
    global $log;
    $LogFile = file_get_contents($LogFile);
    $ExplodedLogFile = explode("~", $LogFile);
    $ArrayNum = count($ExplodedLogFile);

    $i = 0;
    while ( $i <= $ArrayNum ){
        $log[$i] = explode("|", $ExplodedLogFile[$i]);
        $i++;
    }
}
函数LogUserActivity($LogFile,$Activity){
$UserIp=$\u服务器['REMOTE\u ADDR'];
$TimeRef=日期('d-m-Y H:i T');
$Handle=fopen($LogFile,'a');
$Data=$UserIp.'|'.$TimeRef.'|'.$Activity.'~';
fwrite($Handle,$Data);
fclose($Handle);
}
函数ReadUserActivity($LogFile){
全球$log;
$LogFile=文件获取内容($LogFile);
$ExplodedLogFile=explode(“~”,$LogFile);
$ArrayNum=count($ExplodedLogFile);
$i=0;

而($iCall
LogUserActivity
则在每个脚本的开头,将要写入的文件和一些消息传递给自己。例如:

<?php
include('the-file-where-you-put-these-functions.php');
LogUserActivity('/tmp/example.log', 'Porkchop sandwitches!');
// the rest of your script
?>

调用脚本中用于检查日志的另一个函数。它将设置$log变量,然后您可以根据需要打印出来

或者只使用这一行:

<?php
file_put_contents("/tmp/stuff.txt", "penguins", FILE_APPEND); 
?>

在每个脚本开始时调用
LogUserActivity
,将要写入的文件和一些消息传递给自己。例如:

<?php
include('the-file-where-you-put-these-functions.php');
LogUserActivity('/tmp/example.log', 'Porkchop sandwitches!');
// the rest of your script
?>

调用脚本中用于检查日志的另一个函数。它将设置$log变量,然后您可以根据需要打印出来

或者只使用这一行:

<?php
file_put_contents("/tmp/stuff.txt", "penguins", FILE_APPEND); 
?>

我建议使用mySQL数据库:

但是如果你坚持使用它,这里有一些评论可以帮助你理解

<?php
//create file ($LogFile -> filename, $Activity -> type of activity)
function LogUserActivity($LogFile, $Activity){
    //get user's ip
    $UserIp = $_SERVER['REMOTE_ADDR'];
    //get time
    $TimeRef = date('d-m-Y H:i T');
    //create file
    $Handle = fopen($LogFile, 'a');
    //file contents
    $Data = $UserIp.'|'.$TimeRef.'|'.$Activity.'~';
    //write data to file
    fwrite($Handle, $Data);
    //close file
    fclose($Handle);
}

//read data from file ($LogFile -> filename)
function ReadUserActivity($LogFile){
    //variable for storing data on file
    global $log;
    //function to get log file's data
    $LogFile = file_get_contents($LogFile);
    //separate each entry and put it in an array
    $ExplodedLogFile = explode("~", $LogFile);
    //determine number of logs
    $ArrayNum = count($ExplodedLogFile);
    //incrementable variable
    $i = 0;
    //loop to search through logs
    while ( $i <= $ArrayNum ){
        //separate each log into the three parts it has and put them in an array inside the main array
        $log[$i] = explode("|", $ExplodedLogFile[$i]);
        //incrememnt i
        $i++;
    }
}
?>

我建议使用mySQL数据库:

但是如果你坚持使用它,这里有一些评论可以帮助你理解

<?php
//create file ($LogFile -> filename, $Activity -> type of activity)
function LogUserActivity($LogFile, $Activity){
    //get user's ip
    $UserIp = $_SERVER['REMOTE_ADDR'];
    //get time
    $TimeRef = date('d-m-Y H:i T');
    //create file
    $Handle = fopen($LogFile, 'a');
    //file contents
    $Data = $UserIp.'|'.$TimeRef.'|'.$Activity.'~';
    //write data to file
    fwrite($Handle, $Data);
    //close file
    fclose($Handle);
}

//read data from file ($LogFile -> filename)
function ReadUserActivity($LogFile){
    //variable for storing data on file
    global $log;
    //function to get log file's data
    $LogFile = file_get_contents($LogFile);
    //separate each entry and put it in an array
    $ExplodedLogFile = explode("~", $LogFile);
    //determine number of logs
    $ArrayNum = count($ExplodedLogFile);
    //incrementable variable
    $i = 0;
    //loop to search through logs
    while ( $i <= $ArrayNum ){
        //separate each log into the three parts it has and put them in an array inside the main array
        $log[$i] = explode("|", $ExplodedLogFile[$i]);
        //incrememnt i
        $i++;
    }
}
?>


这段代码看起来不言自明,有什么问题吗?
文件内容(“/tmp/stuff.txt”,“企鹅”,文件追加)
将把字符串“penguins”附加到/tmp/stuff.txt,如果它不存在则创建文件。这段代码看起来很简单,你有什么问题吗?
文件内容(“/tmp/stuff.txt”,“penguins”,file\u append);
将把字符串“penguins”附加到/tmp/stuff.txt,如果它不存在则创建文件。