Деньги, как известно, имеют различные функции. Одной из них является непрестанное движение денег в обращении, обслуживание процесса обращения. Без выполнения деньгами этой функции торговля была бы невозможна.

Ilu odwiedzających witrynę

  1. Logika skryptu:
  2. Plusy skryptu:
  3. Wady skryptów:

Niedawno otrzymałem małe zadanie od znanego programisty, aby stworzyć funkcję dla jego strony, która pokazywałaby, ilu użytkowników jest obecnie na stronie, interesujące jest, aby nie korzystać z bazy danych i aby funkcja była jak najbardziej zwarta

Niedawno otrzymałem małe zadanie od znanego programisty, aby stworzyć funkcję dla jego strony, która pokazywałaby, ilu użytkowników jest obecnie na stronie, interesujące jest, aby nie korzystać z bazy danych i aby funkcja była jak najbardziej zwarta. Postanowiłem użyć do tego zwykłych plików tekstowych, które nie będą zawierać niczego, dlatego nie zajmą miejsca.

Logika skryptu:

1. Odwiedzający wchodzi na stronę, jeśli jest nowy, tworzony jest plik txt z jego danymi. Jeśli jest ostatnim gościem, aktualizowana jest tylko najnowsza data modyfikacji jego pliku.

2. Skrypt odbiera dane z pełnej ścieżki wszystkich plików tekstowych do tablicy. Sprawdzamy, kiedy dokonano ostatnich modyfikacji w pliku tekstowym.

3. Jeśli suma ostatniej modyfikacji w pliku tekstowym (w sekundach unix) + określony okres ważności pliku w sekundach, jest mniejsza niż bieżący czas w sekundach, użytkownik opuścił witrynę lub nie zaktualizował strony w przeglądarce.

Plusy skryptu:

- Kompaktowa funkcja z wyraźnie skomentowanym kodem i logicznie nazwanymi zmiennymi.

- Dwa rodzaje kont użytkowników: 1 - Rozważ tylko IP. 2 - Weź pod uwagę adres IP i przeglądarkę

- niezależne od bazy danych

- Nie wymaga żadnej konfiguracji z PHP, wymaga tylko 777 praw do folderu z plikami.

Wady skryptów:

- Błąd odmowy uprawnień może wystąpić, jeśli folder z plikami tekstowymi nie ma 777 uprawnień, ale jest to bardziej prawdopodobny błąd po stronie użytkownika, a nie skryptu.

- Nie pokazuje aktualnej liczby osób na stronie, pokazuje, ilu użytkowników odwiedziło witrynę w określonym przedziale czasu.

- Każdy skrypt może być napisany lepiej, tak wielu programistów i stylów programowania.

Zobaczmy kod naszej funkcji.

Nie zapomnij podać uprawnień do folderu online_count 777

<? php function onlineCount () {// Czas trwania pliku użytkownika (w sekundach) $ RelevanceOfTheFile = 60; // Ścieżka do folderu, w którym znajdują się pliki odwiedzających $ VisistersFileDir = $ _SERVER ['DOCUMENT_ROOT']. '/ Online_count /'; // Rozważ nazwę pliku i przeglądarkę 1 - tak, 0 - nie $ AddBrowserAtFileName = 0; // Zapisz nowy plik odwiedzającemu $ VisiterFileName = $ _SERVER ['REMOTE_ADDR']; if ($ AddBrowserAtFileName) {$ VisiterFileName. = $ _SERVER ['HTTP_USER_AGENT']; } $ VisiterFileName = $ VisistersFileDir.md5 ($ VisiterFileName). '. Txt'; $ OpenFile = fopen ($ VisiterFileName, "a +"); // Pełna ścieżka do wszystkich plików txt $ VisitersFiles = glob ($ VisistersFileDir. '*. Txt'); // Sprawdź liczbę odwiedzających dla ostatnich $ RelevanceOfTheFile sekund if (! Count ($ VisitersFiles)) {return 0; } else {$ ActiveVisiters = 0; foreach ($ VisitersFiles jako $ File) {$ AgeFile = czas_pliku ($ File); if (($ AgeFile + $ RelevanceOfTheFile)> = time ()) {$ ActiveVisiters + = 1; $ UpdateTheDateOfLastEdit = fopen ($ File, 'a +'); @fclose ($ UpdateTheDateOfLastEdit); } else {@fclose ($ OpenFile); $ DeleteOldFile = unlink ($ File); }} zwraca $ ActiveVisiters; }} $ OnlineCount = onlineCount (); echo „Odwiedzający witrynę w ostatniej chwili:”. $ OnlineCount; ?> Wynik skryptu: Odwiedzający witrynę w ostatniej chwili: 1 Pobierz archiwum z przykładem

Wszystkie pytania są napisane w komentarzach.

Więcej powiązanych postów

OnlineCount; ?