如何在PHP中删除重复的IP

如何在PHP中删除重复的IP,php,file-io,Php,File Io,我编写了将客户机的ip保存到logs.txt中的代码,但我想从logs.txt中删除额外的ip。我该怎么办 $at = $_SERVER['REMOTE_ADDR']; $log = fopen("logs.txt", "a"); fwrite($log, $at ."\n"); fclose($log); 提前感谢。使用linux: sort logs.txt | uniq 顺便说一句,ip通常会记录在Web服务器访问日志中。使用linux: sort logs.txt | un

我编写了将客户机的ip保存到logs.txt中的代码,但我想从logs.txt中删除额外的ip。我该怎么办

$at = $_SERVER['REMOTE_ADDR'];
$log = fopen("logs.txt", "a"); 
fwrite($log, $at ."\n"); 
fclose($log);   
提前感谢。

使用linux:

sort logs.txt | uniq
顺便说一句,ip通常会记录在Web服务器访问日志中。

使用linux:

sort logs.txt | uniq
顺便说一句,ip通常会记录在Web服务器访问日志中。

请尝试以下命令

排序文件| uniq>文件。新建

尝试以下命令

排序文件| uniq>文件。新的

方法#1

方法#2

方法#1

方法#2


我会选择萨尔曼的方式,因为它在Windows或Linux环境下都能工作


但是,考虑使用一个数据库,这样可以将所有数据保存在单个文件中。因此,您将能够以更灵活的方式查询数据。

我同意萨尔曼的方式,因为它在Windows或Linux环境下都能工作

但是,考虑使用一个数据库,这样可以将所有数据保存在单个文件中。因此,您将能够以更灵活的方式查询数据

$at = $_SERVER['REMOTE_ADDR'];
$log = file_get_contents("logs.txt");
$temp = explode("\n", $log);
if(in_array($at, $temp) == false) {
    file_put_contents("logs.txt", $log . $at . "\n");
}