熟妇人妻中文字幕在线视频_无码人妻精品视频_久久躁夜夜躁狠狠躁_偷碰人妻无码视频

現(xiàn)在位置:范文先生網(wǎng)>理工論文>計算機信息技術>PHP聊天室技術

PHP聊天室技術

時間:2023-02-21 00:18:58 計算機信息技術 我要投稿
  • 相關推薦

PHP聊天室技術

PHP聊天室技術

黃國輝

深圳商報社

摘要:  討論了實現(xiàn)聊天室的各種技術,并以PHP為例講解實際的編寫過程。

關鍵詞:PHP  聊天室    MySQL

1.前言
   

上網(wǎng)聊天是時下最流行的交友方式。各大網(wǎng)站推出的聊天室都各具特色。
    聊天室主要分為WebChat、BBSChat兩種。BBSChat是基于Telnet

的Tcp協(xié)議,是BBS的附設功能,需要客戶端Telnet程序。WebChat則采用瀏覽器方式,實際上是一個多人共同使用的CGI

程序。其基本原理是把每個用戶的發(fā)言通過瀏覽器傳給系統(tǒng),再由系統(tǒng)收集處理后分發(fā)給特定用戶。
    WebChat一般采用Server Push或Client Pull技術。兩種技術的區(qū)別在于使用不同的方式將數(shù)據(jù)分發(fā)給用戶,Server Push是由服務器將數(shù)據(jù)以多重MIME

編碼,推給(push)使用者端,目前較少網(wǎng)站使用這種方式。Client Pull則是用戶從服務器拉(pull)所要的數(shù)據(jù)。
    最常用的Client Pull

就是利用Html語言的Meta標簽http-equiv="Refresh" 的屬性,每隔一段時間就檢查服務器上是否有新的數(shù)據(jù)。例如<meta http-equiv="Refresh" content=5>,每隔5

秒鐘就會刷新一次頁面。這種方法簡單有效,缺點是刷新時會產(chǎn)生閃爍的現(xiàn)象;而且為了保持效率,每次刷新都會把舊的聊天內(nèi)容清除,用戶想查看或保留對話內(nèi)容都很不方便。為此,采用JavaApplet作為聊天室的前端,利用刷新把從服務器Pull的數(shù)據(jù)通過JavaApplet來顯示也是一種解決方案。還有就是本文要介紹的使聊天程序保持連線的方案。方法一,把聊天程序設置為無限大,就能使瀏覽器不停地保持下載的連線狀態(tài);方法二,聊天程序中存在著無限循環(huán),因為可以方便地設置更高級的功能,所以在此選擇采用。
    Web服務器采用FreeBSD+Apache

,原因是兩者的組合具有最強的性能,而且花費為零。還需要考慮的是用什么方式來存放數(shù)據(jù)呢。用文件相對而言容易實現(xiàn),但是多人使用,頻繁地對同一文件進行IO操作,難免會影響效率,況且FreeBSD的IO性能不佳。可以考慮使用RamDisk,將文件整個放進內(nèi)存,以提高速度;蛘咴趦(nèi)存中劃分出一塊高速空間用以數(shù)據(jù)存放。筆者使用的是數(shù)據(jù)庫方式:MySQL

。因為該數(shù)據(jù)庫就是為大批量用戶同時使用而設計,利用它可以省去設計高速空間操作的復雜編寫,速度也可得到保證。如將整個數(shù)據(jù)庫放進內(nèi)存,效果更好。
    程序用PHP+Html+JavaScript編寫。聊天室主要是對Html的Form中的各種元素進行操作。JavaScript

是基于對象的語言,對Html中的各種元素皆當作對象看待,所以每個元素的方法和屬性都很豐富,操作比較方便。而PHP只有在Form經(jīng)過Post后,將Form

【PHP聊天室技術】相關文章:

情書-聊天室里的愛情--歌詞[Bversion]征集配曲08-15

php職業(yè)規(guī)劃08-19

php實訓心得08-18

php程序員就業(yè)前景08-18

基于PHP的Web數(shù)據(jù)庫訪問08-06

PHP調(diào)用自制控件實現(xiàn)操作環(huán)境的轉(zhuǎn)化08-06

[紅袖添香版]網(wǎng)上流行的聊天室、新聞組常用縮寫08-08

聊天室國慶聯(lián)歡晚會主持詞08-08

在SGI企業(yè)服務器上集成Apache Php Mysql的實例08-09