Heim > Artikel > Backend-Entwicklung > PHP-Methode zur Implementierung der Funktion zum Zählen von Online-Personen
In diesem Artikel wird hauptsächlich die Funktion zum Zählen der Anzahl der Online-Personen in PHP vorgestellt und die damit verbundenen Betriebsfähigkeiten von PHP anhand von Beispielen analysiert, auf die sich Freunde in Not beziehen können dazu
Ich erinnere mich an ASP. Um die Anzahl der Personen online zu zählen, verwenden Sie einfach das Anwendungsobjekt. Wie entwerfe ich PHP?
PHP kapselt das Sitzungsobjekt sehr gut. Gemäß dem HTTP-Protokoll können Besucher jeder Website-Reihe eine eindeutige Kennung generieren
echo session_id(); //6ed364143f076d136f404ed93c034201<br />
Dies ist der Schlüssel zum Zählen der Anzahl der Personen, die online sind. Nur mit dieser Sitzungs-ID können wir die Personen unterscheiden, die uns besuchen. Weil jeder anders ist.
Als nächstes erfahren Sie, wie Sie den Wert in der Sitzungsvariablen in der Datenbank speichern.
bool session_set_save_handler ( callable $open , callable $close , callable $read , callable $write , callable$destroy , callable $gc ) //callable 可随时支取的,请求即付的,随时可偿还的 // open(string $savePath, string $sessionName) 打开连接 //close() 关闭连接 //read(string $sessionId) 对出数据 //write(string $sessionId, string $data) //写入数据 //destroy($sessionId) //删除数据 //gc($lifetime) //垃圾回收函数
Hinweis Für die oben genannten Funktionen werden Parameter übergeben. Sie müssen lediglich angeben, dass sie übergeben werden. Wenn PHP den Code ausführt, liest es automatisch die Parameter in der
Sitzung
Der nächste Schritt besteht darin, die oben genannten fünf Funktionen und eine Hauptfunktion abzuschließen
session_set_save_handler( array("session","open"), array("session","close"), array("session","read"), array("session","write"), array("session","destroy"), array("session","gc") );
Die Hauptfunktion wird so vervollständigt, aber warum muss ich array("session", "method") verwenden, um diese Methoden aufzurufen? verstehen
(Grundsätzlich verstanden:Jedes Mal, wenn Sie die Methode eines Objekts als Parameter übergeben, müssen Sie diese Form verwenden: array(object, "method name"))
Der nächste Schritt ist jeweils das Schreiben einer Funktion
//链接数据的open function open($path,$sessname) { $db = mysql_connect("localhost","root","123456","test"); mysql_select_db("test",$db); mysql_query("SET NAMES UTF8"); return true; }
Schließende Daten können eng verknüpft werden
function close(){ $db = mysql_connect("localhost","root","123456","test"); mysql_close($db); return true; }
Schlüsselfunktion Um zu beginnen, zeigen Sie die Lesefunktion read() an. Hauptsächlich wird der Funktion read() ein Wert übergeben. Was übergeben wird, ist session_id
function read($sid){ $sql = "select data from session where sid='{$sid}' and card='".self::$card."'"; $query = mysql_query($sql) or die(mysql_error()); $row = mysql_fetch_array($query); $row>0?$row["data"]:" "; }
Die zweite ist die Schreibfunktion. Wenn die Daten in der Datenbank vorhanden sind, aktualisieren Sie einfach die Zeit. Die neuen Daten werden geschrieben
function write($sid,$data) { $sql = "select sid from session where sid='{$sid}' and card='".self::$card."'"; $query = mysql_query($sql) or die(mysql_error()); $mtime = time(); $num = mysql_num_rows($query); if($num){ $sql = "UPDATE session SET data='{$data}', mtime ='{$mtime}'"; }else{ $sql = "INSERT INTO session (sid,data,mtime,ip,card) VALUES('{$sid}','{$data}','".time()."','{$_SERVER['REMOTE_ADDR']}','".self::$card."')"; } mysql_query($sql); return true; }
Die nächste Der Schritt besteht darin, die Funktion des PHP-Recyclingmechanismus widerzuspiegeln. In beiden Funktionen werden Parameter übergeben.
function destroy($sid){ $sql = "DELETE FROM session WHERE sid='{$sid}'"; mysql_query($sql) or die(mysql_error()); return true; } function gc($max_time){ $max_time = 600; $sql = "DELETE FROM session WHERE `mtime`<'".(time()-$max_time)."'"; mysql_query($sql) or die(mysql_error()); return true; }
Okay, die fünf Funktionen sind abgeschlossen und dann wird die Anzahl der Sitzungsdatensätze aus der Sitzungstabelle ausgelesen. Sie können die Anzahl der Personen, die die Seite besuchen, genau zählen.
Benutzerdatensätze, die 10 Minuten lang nicht bedient wurden, werden gelöscht
Zusammenfassung: Das Obige ist der gesamte Inhalt dieses Artikels, ich hoffe, er wird für alle hilfreich sein Lernen.
Verwandte Empfehlungen:
PHP-Sammlung allgemeiner Funktionen
Das obige ist der detaillierte Inhalt vonPHP-Methode zur Implementierung der Funktion zum Zählen von Online-Personen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!