教育资源为主的文档平台

当前位置: 查字典文档网> 所有文档分类> 论文> 其他论文> PHP聊天室技术

PHP聊天室技术

上传者:网友
|
翻新时间:2013-12-18

PHP聊天室技术

PHP聊天室技术 PHP聊天室技术 信息技术论文 更新:2006-4-8 阅读: PHP聊天室技术

PHP聊天室技术

黄国辉

深圳商报社

摘要: 讨论了实现聊天室的各种技术,并以PHP为例讲解实际的编写过程。

关键词:PHP 聊天室 MySQL

1.前言

上网聊天是时下最流行的交友方式。各大网站推出的聊天室都各具特色。

聊天室主要分为WebChat、BBSChat两种。BBSChat是基于Telnet的Tcp协议,是BBS的附设功能,需要客户端Telnet程序。WebChat则采用浏览器方式,实际上是一个多人共同使用的CGI程序。其基本原理是把每个用户的发言通过浏览器传给系统,再由系统收集处理后分发给特定用户。

WebChat一般采用Server Push或Client Pull技术。两种技术的区别在于使用不同的方式将数据分发给用户,Server Push是由服务器将数据以多重MIME编码,推给(push)使用者端,目前较少网站使用这种方式。Client Pull则是用户从服务器拉(pull)所要的数据。

最常用的Client Pull就是利用Html语言的Meta标签http-equiv="Refresh" 的属性,每隔一段时间就检查服务器上是否有新的数据。例如<meta http-equiv="Refresh" content=5>,每隔5秒钟就会刷新一次页面。这种方法简单有效,缺点是刷新时会产生闪烁的现象;而且为了保持效率,每次刷新都会把旧的聊天内容清除,用户想查看或保留对话内容都很不方便。为此,采用JavaApplet作为聊天室的前端,利用刷新把从服务器Pull的数据通过JavaApplet来显示也是一种解决方案。还有就是本文要介绍的使聊天程序保持连线的方案。方法一,把聊天程序设置为无限大,就能使浏览器不停地保持下载的连线状态;方法二,聊天程序中存在着无限循环,因为可以方便地设置更高级的功能,所以在此选择采用。

Web服务器采用FreeBSD+Apache,原因是两者的组合具有最强的性能,而且花费为零。还需要考虑的是用什么方式来存放数据呢。用文件相对而言容易实现,但是多人使用,频繁地对同一文件进行IO操作,难免会影响效率,况且FreeBSD的IO性能不佳。可以考虑使用RamDisk,将文件整个放进内存,以提高速度。或者在内存中划分出一块高速空间用以数据存放。笔者使用的是数据库方式:MySQL。因为该数据库就是为大批量用户同时使用而设计,利用它可以省去设计高速空间操作的复杂编写,速度也可得到保证。如将整个数据库放进内存,效果更好。

程序用PHP+Html+JavaScript编写。聊天室主要是对Html的Form中的各种元素进行操作。JavaScript是基于对象的语言,对Html中的各种元素皆当作对象看待,所以每个元素的方法和属性都很丰富,操作比较方便。而PHP只有在Form经过Post后,将Form中的元素转成对应的变量,才能处理用户输入的数据。从交互性来说比较差,这也是使用JavaScript的原因。采用PHP的原因是因为比起其它CGI语言,其速度和安全性都较佳,开发也比较容易。

下载文档

版权声明:此文档由查字典文档网用户提供,如用于商业用途请与作者联系,查字典文档网保持最终解释权!

网友最新关注

学游泳
我喜欢的一次春游
猜歇后语
我的双休日
一棵桔子树的自述    学洗碗   太阳能机器狗
《长袜子皮皮》
五官争功劳
我最崇拜孟姜女
百鸟乐园
我的假日
蚕宝宝
贪心的狮子
Do都城之旅
寒假里的一件事
春天的校园
创建无吸烟学校倡议书
留守儿童爱心倡议书
大学院系党支部创先争优活动承诺书5篇
教师党员公开承诺书
保护眼睛倡议书
党组织创先争优承诺书
师德承诺书
2011年创先争优个人公开承诺书
我的党性分析
医学院文明修身倡议书
业务员团队倡议书
党员创先争优活动承诺书
个人廉政责任承诺书
县卫生系统廉洁从政公开承诺书
保护视力,保护心灵之窗
服装设计的国际宏观趋势及成因分析
对企业营销创新对策和要求综述
行为艺术中的身体叙事
探析欧洲语言学对美国语言学的影响
索绪尔的共时语言学与历时语言学
普世语言、王朝语言与民族语言
市场营销案例教学中的案例问题研究
企业营销管控的思路和方法
快速消费品市场分析及其营销渠道管理
简析公共领域视角下的公民文化
如何提高高职院校韩语专业学生的韩语听力
电力企业的营销对策概述
企业文化营销的冲突表现
浅谈提高高职院校学生韩语会话能力的探索
语料库语言学对语言学理论的贡献分析
《一个中国孩子的呼声》教学设计十三
《一个中国孩子的呼声》第一课时教学设计
《和我们一样享受春天》教学设计三
《一个中国孩子的呼声》教学设计十
《一个中国孩子的呼声》教学设计十一
《和我们一样享受春天》教学设计二
《一个中国孩子的呼声》教学设计十二
《触摸春天》教学设计
《一个中国孩子的呼声》教学设计十四
《和我们一样享受春天》教学设计四
《触摸春天》教学设计二
《一个中国孩子的呼声》词句教学
《触摸春天》教学设计三
《触摸春天》教学设计一
《和我们一样享受春天》教学设计一