<?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);
?>
function
get_all_visit_number()
{
$mc
=
new
Memcache ();
global
$wpdb
;
$table
=
"wp_options"
;
$mc
->connect (
"127.0.0.1"
, 11211 );
$visit_number
=
$mc
->get (
'visit_number'
);
if
(!
$visit_number
) {
$querystr
=
"SELECT `option_value` FROM "
.
$table
.
" WHERE `option_name`='visit_number'"
;
$results
=
$wpdb
->get_results(
$querystr
);
$visit_number
=
intval
(
$results
[0]->option_value);
}
$mc
->set (
'visit_number'
, ++
$visit_number
);
$visit_number
=
$mc
->get (
'visit_number'
);
if
(
$visit_number
% 100 == 0) {
$data_array
=
array
(
'option_value'
=>
$visit_number
);
$where_clause
=
array
(
'option_name'
=>
'visit_number'
);
$wpdb
->update(
$table
,
$data_array
,
$where_clause
);
}
$mc
->close ();
return
$visit_number
;
}