Såg ut såhär:
Code: Select all
<?
$ipnummer=getenv("REMOTE_ADDR");
$count = 0;
$array[$count++] = $ipnummer;
$handle = fopen("hits2.txt", "r");
while (!feof ($handle)) {
$buffer = fgets($handle, 4096);
if (preg_replace("/\r?\n$|\r[^\n]$/", "", trim($buffer)) != "") {
$array[$count++] = preg_replace("/\r?\n$|\r[^\n]$/", "", trim($buffer));
}
}
fclose ($handle);
$new = array();
for($i=0;$i<count($array);++$i) {
if(in_array($array[$i], $new) != "true") {
$new[] = $array[$i];
}
}
$handle = fopen("hits2.txt", "w");
for ($i = 0; $i < sizeof($new); $i++) {
fputs($handle, $new[$i]."\n");
}
fclose($handle);
echo sizeof($new);
?>
Code: Select all
<?
$ipnummer=getenv("REMOTE_ADDR");
$ip=trim($ipnummer);
$count=0;
$flag=0;
$handle=fopen("hits2.txt", "r");
while (!feof ($handle)) {
$buffer=trim(fgets($handle,4096));
$count++;
if ($ip==$buffer) {
$flag=1;
}
}
fclose($handle);
if ($flag==0) {
$handle=fopen("hits2.txt","a");
fputs($handle,$ipnummer."\n");
fclose($handle);
$count++;
}
echo ($count-1);
?>
Nån som vill optimera ytterligare är välkommen. Det är fullt möjligt att min metod inte är den bästa