最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

PHP實現統(tǒng)計在線人數功能示例

 更新時間:2016年10月15日 12:00:45   作者:dengwz7788  
這篇文章主要介紹了PHP實現統(tǒng)計在線人數功能,結合實例形式分析了php基于session對象計算與統(tǒng)計在線人數的相關操作技巧,需要的朋友可以參考下

本文實例講述了PHP實現統(tǒng)計在線人數的方法。分享給大家供大家參考,具體如下:

我記得ASP里面統(tǒng)計在線人數用application 這個對象就可以了。PHP怎么設計?

PHP對session對象的封裝的很好,根據HTTP協議,每個范圍網站的訪客都可以生成一個唯一的標識符

echo session_id();
//6ed364143f076d136f404ed93c034201<br />

這個就是統(tǒng)計在線人數的關鍵所在,只有有這個session_id 也就可以區(qū)分訪問的人了。因為每一個人都不同。
接下來,是怎么把session變量里面的值存到數據庫里面去,這里有將介紹另一個函數

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) //垃圾回收函數

注意,上面有幾個函數是有參數傳入的,你只要表明有傳送傳入就是的。PHP在執(zhí)行代碼的時候會自動讀取

session中對于的參數

接下來就是完成上面五個函數和一個主函數就可以了

session_set_save_handler(
   array("session","open"),
   array("session","close"),
   array("session","read"),
   array("session","write"),
   array("session","destroy"),
   array("session","gc")
);

主函數就這樣完成了,但為什么要用array(“session”,"方法")來調用這些方法,我真心搞不懂

(基本懂了:凡是將對象的方法作為參數傳遞都需要使用這種形式:array(對象, "方法名"))

接下來就是每個函數的編寫

//鏈接數據的open
function open($path,$sessname) {
  $db = mysql_connect("localhost","root","123456","test");
  mysql_select_db("test",$db);
  mysql_query("SET NAMES UTF8");
  return true;
}

關閉數據可以鏈接的close

function close(){
$db = mysql_connect("localhost","root","123456","test");
mysql_close($db);
return true;
}

關鍵函數要開始了,顯示讀取函數read(),主要,read()函數是有值傳進去的,傳入的是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"]:" ";
}

第二個是寫入函數,如果數據庫里面存在的數據,只要更新時間就可以了,新數據寫入

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;
}

接下來就是體現PHP回收機制的函數了,兩個函數都有參數傳入。

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;
}

好了,五個函數都完成了,再就是session表中間讀出session的記錄條數了。就能準確的統(tǒng)計出正在訪問頁面的人數。

10分鐘沒有操作的用戶記錄將被清空

更多關于PHP相關內容感興趣的讀者可查看本站專題:《php文件操作總結》、《PHP運算與運算符用法總結》、《PHP網絡編程技巧總結》、《PHP基本語法入門教程》、《php操作office文檔技巧總結(包括word,excel,access,ppt)》、《php日期與時間用法總結》、《php面向對象程序設計入門教程》、《php字符串(string)用法總結》、《php+mysql數據庫操作入門教程》及《php常見數據庫操作技巧匯總

希望本文所述對大家PHP程序設計有所幫助。

相關文章

  • php session安全問題分析

    php session安全問題分析

    攻擊者通過投入很大的精力嘗試獲得現有用戶的有效會話ID,有了會話id,他們就有可能能夠在系統(tǒng)中擁有與此用戶相同的能力.
    2011-06-06
  • PHP中的traits實現代碼復用使用實例

    PHP中的traits實現代碼復用使用實例

    這篇文章主要介紹了PHP中的traits實現代碼復用使用實例,本文講解了Trait簡單使用、優(yōu)先級問題、多個Trait沖突問題、as可用來修改方法訪問控制、Trait中使用Trait等內容,需要的朋友可以參考下
    2015-05-05
  • PHP轉盤抽獎接口實例

    PHP轉盤抽獎接口實例

    這篇文章主要介紹了PHP轉盤抽獎接口的實現方法,實例分析了隨機抽獎接口的實現原理與對應數據庫操作的技巧,需要的朋友可以參考下
    2015-02-02
  • PHP的5個安全措施小結

    PHP的5個安全措施小結

    多年來,PHP一直是一個穩(wěn)定的、廉價的運行基于web應用程序的平臺。像大多數基于web的平臺一樣,PHP也是容易受到外部攻擊的
    2012-07-07
  • 淺析php學習的路線圖

    淺析php學習的路線圖

    一直都想走上碼農的道路,奈何當年沒有學好。一直與碼農無緣?,F在又想做一些碼農就下了一套某個培訓機構的php視頻來看。希望能走上碼農的道路
    2013-07-07
  • 如何使用SublimeText3配置 PHP IDE環(huán)境

    如何使用SublimeText3配置 PHP IDE環(huán)境

    這篇文章主要介紹了如何使用SublimeText3配置 PHP IDE環(huán)境,并使用Xdebug進行調試,喜歡使用SublimeText的同學,可以參考下
    2021-04-04
  • PHP判斷密碼強度的方法詳解

    PHP判斷密碼強度的方法詳解

    這篇文章主要介紹了PHP判斷密碼強度的方法,涉及php正則判斷、ajax交互及頁面元素動態(tài)操作相關實現技巧,需要的朋友可以參考下
    2017-05-05
  • php5數字型字符串加解密代碼

    php5數字型字符串加解密代碼

    對應awk版加解密程序的PHP實現代碼
    2008-04-04
  • PHP實現基數排序的方法詳解

    PHP實現基數排序的方法詳解

    這篇文章主要介紹了PHP實現基數排序的方法,結合實例形式分析了基數排序的原理、實現方法與相關操作技巧,需要的朋友可以參考下
    2017-12-12
  • rrmdir php中遞歸刪除目錄及目錄下的文件

    rrmdir php中遞歸刪除目錄及目錄下的文件

    php自帶的rmdir,只能刪除空目錄,這個rrmdir就可以遞歸刪除目錄及目錄下的所有文件,不過使用起來要小心哦,不要把所有文件都刪了
    2011-05-05

最新評論

定边县| 景宁| 湖口县| 达拉特旗| 郁南县| 台南市| 嘉禾县| 潼关县| 伊金霍洛旗| 诸城市| 勐海县| 西畴县| 井研县| 安阳县| 新田县| 青浦区| 临海市| 徐水县| 霍城县| 晋州市| 南木林县| 定州市| 吉隆县| 新宁县| 耒阳市| 秭归县| 栖霞市| 阳泉市| 平昌县| 上栗县| 西安市| 邹城市| 闽清县| 祁连县| 自贡市| 铜山县| 昭平县| 南和县| 合山市| 武功县| 白城市|