phpとmemcacheでオンライン人数を統計

<?php
$mc = new Memcache ();
// memcacheに接続
$mc->connect(“127.0.0.1", 11211);
// オンラインユーザのIPとオンラインアクセスデータを取得
$online_members = $mc->get('online_members’);
// 初期化
if (!$online_members) {
$online_members = array();
}
// ユーザのIPを取得
$ip = $_SERVER [“REMOTE_ADDR"];
// ユーザのオンライン時間を設定
$online_members [$ip] = time();
foreach ($online_members as $k => $v) {
if (time() – $v > 180) {
unset($online_members[$k]);
}
}
$mc->set('online_members’, $online_members);
$online_members = $mc->get('online_members’);
//オンライン人数の統計
echo count($online_members);

Source

Posted by arkgame