1. <code id="ya7qu"><span id="ya7qu"><label id="ya7qu"></label></span></code>

    <b id="ya7qu"><bdo id="ya7qu"></bdo></b>
    <wbr id="ya7qu"><optgroup id="ya7qu"><strike id="ya7qu"></strike></optgroup></wbr>
  2. <u id="ya7qu"><bdo id="ya7qu"></bdo></u>
    現(xiàn)在位置:范文先生網(wǎng)>理工論文>計(jì)算機(jī)信息技術(shù)>PHP聊天室技術(shù)

    PHP聊天室技術(shù)

    時(shí)間:2023-02-21 00:18:58 計(jì)算機(jī)信息技術(shù) 我要投稿
    • 相關(guān)推薦

    PHP聊天室技術(shù)

    PHP聊天室技術(shù)

    黃國(guó)輝

    深圳商報(bào)社

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

    關(guān)鍵詞:PHP  聊天室    MySQL

    1.前言
       

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

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

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

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

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

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

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

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

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

    【PHP聊天室技術(shù)】相關(guān)文章:

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

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

    php實(shí)訓(xùn)心得08-18

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

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

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

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

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

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

    国产福利萌白酱精品tv一区_日韩亚洲中字无码一区二区三区_亚洲欧洲高清无码在线_全黄无码免费一级毛片
    1. <code id="ya7qu"><span id="ya7qu"><label id="ya7qu"></label></span></code>

      <b id="ya7qu"><bdo id="ya7qu"></bdo></b>
      <wbr id="ya7qu"><optgroup id="ya7qu"><strike id="ya7qu"></strike></optgroup></wbr>
    2. <u id="ya7qu"><bdo id="ya7qu"></bdo></u>
      亚洲国产综合在线区尤物 | 亚洲狠狠婷婷综合久久久久图片 | 亚洲少妇一区二区 | 日本免费精东视频 | 日本特黄特黄刺激大片免费 | 亚洲中文三级情片在线观看 |