a legegyszerűbb honlapstatisztika

az extra által nyújtott statisztika nem volt elég jó. írtam jobbat. valahogy hiányzott az, hogy ha kell, egyenként is elemezhessem a látogatókat, illetve fontos volt, hogy tudjam, milyen GET paramétert hányszor hívnak meg...
Hát elkészült a nagy mű...

használjátok egészséggel:P


<?
file_put_contents("log.txt",file_get_contents("log.txt") . "\n----" . 
date("Y-m-d H:i:s") . "----\n" . var_export($_SERVER,TRUE));
?>

Hozzászólások

Append módról nem hallottál? Na meg log fájlokban egy bejegyzés egy sor szokott lenni.

1. de igen, hallottam. ha annyira hiányzik, írd át magadnak.
2. lehet;) az első verzióban még konvertáltam a sortöréseket, de aztán úgy gondoltam, hogy így jobban olvasható... tudom, letértem a szabványos logfájl felé vezető útról, és így az örök kárhozat fog várni. vállalom.
3. ha kötözködni akarsz, állok elébe:P tisztában vagyok a képességeimmel, és azzal, hogy milyen hűde komolyan gondoltam. Sztem a kötözködéssel mindenesetre épp emiatt nem engem járatsz le;)
4. ha mindenféleképp kötözködni szeretnél, javaslom, mutass rá még arra is, hogy a $_SERVER változóban a kérés teljesítésének az ideje eleve benne van;)
5. igen, szeretlek tiszta szívemből.
6. najó, betudom annak, hogy korán volt akkor és még nem reggeliztél
:P
_________________________________________
Valódi paraszt vagyok. Csak előre tudok lépni, nem azt ütöm le, aki velem szembenáll, és ha nincs tovább, megváltozom.

Nem arról van szó, hanem arról, hogy feleslegessen beolvastatod az egész naplófájlt (feleslegessen használod az erőforrásokat), ahelyett, hogy csak hozzáírnál néhányszáz byte-t.

Egyébként

fwrite(fopen('log.txt','a'), ...);

szeirntem egyszerűbb, mint

file_put_contents("log.txt",file_get_contents("log.txt") ...

---
A Linux nem Windows, de a Windows se Linux.

szerintem egyezzünk ki egy ilyenben:
file_put_contents ('log.txt', ..., FILE_APPEND | LOCK_EX);

lehet, hoyg tévedek, de szerintem ha egy függvényt használok, az talán binárisan van összedrótozva, szóval talán hamarabb végrehajtható...
az egymásba ágyazott fwrite-fopen párosban meg azt nem szeretem, hogy utána nem tudok fclose-olni, pedig hej de szeretnék:) az már csak simán bogarasság:D

mindazonáltal gyakran követem el azt a hibát, hogy nem optimalizálom a kódot erőforrásra... az extra szerverén fut a dolog, nekik meg van olyanból sok:P a saját gépen futtatott kóddal tényleg másképp bánok.

szóval azt hiszem a fenti verzióra át fogom írni... jobb az úgy, de azon a szinten ahol én állok, olyan belekötni a programozásba, mint egy dadaista versbe:D

_________________________________________
Valódi paraszt vagyok. Csak előre tudok lépni, nem azt ütöm le, aki velem szembenáll, és ha nincs tovább, megváltozom.

Na erre így nem emlékeztem fejből, hogy van ilyen flagje is a file_put_contents-nek. Sokszor PHP4 kompatibilisen írok, ezért ritkábban használom a file_put_contents -t.

Egyébként a kevesebb kód nem mindig gyorsabb :)

Ha van például egy tömbböd, melynek szintén tömbbök az elemei, és azon kell végigszaladni, akkor (saját méréseim szerint) gyorsabb (akár fényévekkel) a

$to = count($array);
for ($i = 0; $i<$to; $i++) {
  $row = &$array[$i];
  ...
}

mint a

foreach ($array as $row) {
  ...
}

Persze a két megoldás nem teljessen egyenértékű, egyik csak hivatkozik a tömbelemre, a foreach ad, másik meg külön példányt csinál belőle.

Egyébként nem kötözködni akartam.

---
A Linux nem Windows, de a Windows se Linux.