ホームページ > バックエンド開発 > PHPチュートリアル > オンライン人数をカウントする機能を実装するPHPメソッド

オンライン人数をカウントする機能を実装するPHPメソッド

墨辰丷
リリース: 2023-03-28 18:52:01
オリジナル
1526 人が閲覧しました

この記事では、主に PHP のオンライン人数をカウントする機能を紹介し、セッション オブジェクトの計算に基づいて PHP の関連操作スキルを分析し、例の形でオンライン人数をカウントします。必要な友人は参考にしてください。

ASP では、オンラインの人数をカウントするためにこのオブジェクトが使用されることを思い出しました。 PHPをどう設計するか?

PHP はセッション オブジェクトを非常にうまくカプセル化しており、HTTP プロトコルに従って、Web サイトの各範囲への訪問者は一意の識別子を生成できます

これだけでオンラインの人数をカウントすることができます。 session_id は訪問者を区別することもできます。みんな違うから。

次に、セッション変数の値をデータベースに保存する方法を説明します

echo session_id();
//6ed364143f076d136f404ed93c034201<br />
ログイン後にコピー

、上記にはパラメータが渡される関数がいくつかあります。着信通信があることを示します。 PHP はコードを実行するときにセッション内のパラメーターを自動的に読み取ります。次のステップでは、上記の 5 つの関数と main 関数を完成させます。しかし、なぜ array("session" を使用する必要があるのでしょうか)。 , "メソッド") でこれらのメソッドを呼び出すにはどうすればよいですか?

(基本的に理解しています:

オブジェクトのすべてのメソッドはパラメーターとして渡されるため、次の形式を使用する必要があります: array(object , "メソッド名") ))

次のステップは各関数を書くことです

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) //垃圾回收函数
ログイン後にコピー

Closeデータをリンクできますclose

session_set_save_handler(
   array("session","open"),
   array("session","close"),
   array("session","read"),
   array("session","write"),
   array("session","destroy"),
   array("session","gc")
);
ログイン後にコピー

key関数が開始されようとしています、読み取り関数read()を表示します、主に、read() 関数には値が渡されます。渡されるのは session_id

//链接数据的open
function open($path,$sessname) {
  $db = mysql_connect("localhost","root","123456","test");
  mysql_select_db("test",$db);
  mysql_query("SET NAMES UTF8");
  return true;
}
ログイン後にコピー

2 つ目は write 関数です。データがデータベースに存在する場合は、新しいデータの書き込み時間を更新するだけです。

function close(){
$db = mysql_connect("localhost","root","123456","test");
mysql_close($db);
return true;
}
ログイン後にコピー

次のステップは、PHP リサイクル メカニズムを具体化する関数です。どちらの関数にもパラメーターが渡されます。

function read($sid){
  $sql = "select data from session where sid=&#39;{$sid}&#39; and card=&#39;".self::$card."&#39;";
  $query = mysql_query($sql) or die(mysql_error());
  $row = mysql_fetch_array($query);
  $row>0?$row["data"]:" ";
}
ログイン後にコピー

さて、5つの関数が完了すると、セッションテーブルからセッションレコードの数が読み出されます。ページにアクセスした人の数を正確にカウントできます。

10分間操作しなかったユーザー記録は消去されます

概要: 以上がこの記事の全内容です。皆様の学習に役立つことを願っています。

関連する推奨事項:

PHP共通関数集

PHPの標準ライブラリ

php

yieldの役割



以上がオンライン人数をカウントする機能を実装するPHPメソッドの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート