首页IT科技php vs(phpwind和discuz的简单对比)

php vs(phpwind和discuz的简单对比)

时间2025-08-05 02:47:21分类IT科技浏览5542
导读:相关推荐:《discuz教程》...

相关推荐:《discuz教程》

discuz!(简称dz)和phpwind(简称pw)是国内最著名的两个PHP论坛系统              ,随着它们相继宣布开源以后                     ,在各方面      ,不管技术上       ,还是功能上                     ,还是界面上             ,都有了长足的发展       ,声威大振                     ,远非国外那些功能简单的电子公告板系统可比了              。其造成的一个副作用是大大带动了PHP在国内的普及(本人就是在寻找合适的论坛程序的时候             ,才开始关注PHP,进而不能自拔的 )                    。

客观的说                     ,目前的pw和dz各有短长                    ,其互相之间的激烈竞争应该说提高了PHP论坛的水平,在功能上不仅赶上了以功能多和漏洞多而著称的动网论坛              ,而且因为它们的效率和速度远远超过动网                    ,弄的动网市场大大萎缩      ,原来的一些动网论坛都纷纷转换成了dz或者pw              ,搞的动网都不得不开始弄PHP论坛了       。

要说他们哪个更好                     ,是比较难的事情      ,毕竟各有短长       ,俺也不敢在这里妄下结论              。不过从市场份额和网上的言论来看                     ,目前dz还是略占上风的             ,而且去年国内好几个知名的大论坛都转换成了dz(比如凤凰网              、牧文                    、tompda等)       ,而pw在大网站方面收获甚小                    。

但是毕竟对好多新手来说                     ,他们都要面临一个选择论坛程序的问题             ,因此,dz和pw哪个更好                     ,也就成了经常被问的问题                    ,这种没有答案的问题,自然要被反复问起       。本文试图从比较深的层次来分析两个论坛的优劣              ,为新手提供选择的参考       。如有错谬之处                    ,欢迎批评指正                    。

一       、界面篇

首先      ,从界面上说              ,从整体上说                     ,dz的界面比较美观      ,整体感好              。

pw的界面给人一种模仿dz的感觉       。同时在界面的细节上       ,看起来pw还是没有dz完美                    。

二              、技术篇

从技术上说                     ,pw和dz都使用了文件方式的数据缓存技术             ,通过把常用的数据表       ,比如论坛版面设置参数                    、基本参数等                     ,生成静态缓存文件(根据条件触发更新或者手动更新)             ,来减少数据库读取次数,提高效率                     ,在这个方面两者非常相似              。

1       、模版技术

从模版技术上说                    ,dz从2.5f版就开始采用的这种静态模版技术,从俺个人角度上说              ,还是非常适合论坛这种频繁更新的网站程序使用的。它通过动态生成静态模版的方式                    ,解决了模版解析效率的问题                    。

同时      ,dz的这种模版方式              ,使得修改界面也比较容易                     ,很直观                    。

而pw使用echo语句的这种方式(姑且称其为模版)      ,就寒碜多了       ,要增加了一个if判断条件                     ,就要折腾半天。添加了混合PHP代码的模板             ,在 dreamweaver中也容易被误操作删除              。特别是如果修改的时候稍有不慎       ,很可能会使网页成了白板(没有输出)                     ,让俺每次修改pw模版无不如履薄冰             ,战战兢兢                    。       。              。                    。恐怕这也是第三方模版中,dz远远多于pw的原因吧       。

不过pw目前在模版上也在改进                     ,现在看verycms 3.0就已经开始使用真正的模版技术                    ,不过目前用的都还比较初级       。                    。              。

2       、速度问题

从模版上看,两者的效率应该是差不多的              ,pw的模版其实就是直接包含的混合了PHP语句的一部分PHP文件                    ,而dz的模版平时并不需要解析      ,所以效率应该是差不多的              ,但是网上总是有人声称网站使用dz的速度比pw慢                     ,这方面本人没有测试过      ,不敢妄作评论       。而且网站访问速度还是要受很多因素的影响       ,比如:本地网速                    、服务器带宽              、心理                    。              。。                    。                    。客观的评价还是很难的                     ,除非使用专业技术手段。不过从官方网站的速度来看             ,明显还是pw占优啊       ,呵呵

最近看了一下dz的CSS文件                     ,明显是用CSS用的有点过度了             ,在dz中大量使用了CSS,CSS文件高达16KB左右(pw只有2KB左右)                     ,可能造成了IE渲染网页的时候                    ,效率比较低              。同时,由于dz的CSS文件过于庞大              ,只好采用了外置的方式(Link)                    。

这样如果网速很慢                    ,网页已经或者部分下载完      ,而CSS文件下载没完成(网速慢的时候              ,常常发生这种情况)                     ,那么网页根本就不能正常显示       。

在网速慢的时候      ,光dz的CSS文件       ,就要用好几秒                     ,甚至十几秒的时间才能下载             ,而整个网页只能在CSS下载完成以后才能进行正确的显示       ,这就无怪乎在网速慢的时候                     ,dz表现大大逊色于pw了              。

相反             ,pw在设计CSS的时候,明显是比较简洁                     ,这对网页的渲染肯定是比较有利                    。同时                    ,pw采用了把CSS文件嵌入的方式,尽管每次访问网页都造成了几K 个字节的流量              ,但是实际影响并不大                    ,反而觉得网页打开速度比dz要快(这就是pw用了一个笨法子      ,却常常效果比dz强的典型案例)       。

这方面              ,建议dz痛下决心简化过分臃肿的CSS文件                     ,提高网页速度       。

三       、功能篇

下面俺就dz5.5和pw5.3的功能      ,做一个简单的       ,本人看来是比较深入                     ,可能高手看来仍嫌浅显的分析             ,请大家指正:

1                    、登录方式:

pw的前台登录和后台登录采用了不同的Cookie方式       ,这样前后台分开的方式                     ,个人感觉             ,有利于安全,也便于管理                    。后台帐号与前台帐号可以彻底分开              。

而dz的前后台登录是用了一个帐号                     ,尽管在进入后台的时候再次提示输入密码                    ,不过还是不如pw方便       。

比较特别的是,dz在注册的时候              ,要求输入提示问题(选填)                    ,而且在登录界面中      ,也有提示输入的界面              ,个人感觉                     ,绝对的画蛇添足      ,无聊                    。如果说使用提示问题来找回密码       ,还是有点道理的              。用提示问题的方式                     ,让新手看了无所适从             ,脑袋都晕了

2              、分栏显示:

pw从5.0.1开始支持左右分栏显示了       ,然而功能太简单                     ,不能树状显示子板块             ,此功能与其说有,不如说没有                     ,弄的有点搞笑                    ,属于半成品(倒是也符合pw的一贯特点--喜欢推出一些不完美的东西让大家修改)。

看了dz5.5的分栏显示,做的还是比较完美的              ,感觉相当不错了                    。

3、后台管理的效率:

pw的横向操作非常不错                    ,大大节省了管理的难度      ,特别是在根据用户组设置权限的时候              ,非常的那个方便啊                     ,这方面dz需要改进                    。

dz提供了一个方案的方式来解决后台重复操作问题      ,应该说也有一定道理       ,但是用起来不太容易上手                     ,如果是设置一个单独的项目             ,就比较繁琐。

4                    、个人空间(文集)功能:

dz5.5内置了minispace个人空间功能       ,可以说自从discuz合并了supsite以后                     ,在论坛功能的外展方面             ,占据了很大优势,吸引了很多个人网站的注意力              。

这个minispace用dz官方的话说                     ,是这样的:

“完全利用论坛原有资源                    ,会员不必更多付出,即可拥有个性展示页面与 X-Space 完美结合              ,可顺畅实现 MiniSpace 与 X-Space 自然过渡               ”

大体看了一下                    ,发现这个minispace做的很不错      ,利用它              ,用户可以把自己的优秀帖子整理出来                     ,形成一个文集的方式      ,方便别人访问                    。以前在别的论坛见过这个功能       ,觉得很不错                     ,没想到dz把它整合进去了       。这个功能已经可以满足大部分论坛的功能要求了             ,如果要求更高       ,比如希望能让用户发布b0客文章                     ,按照官方的说法             ,也可以迁移到X-space中去              。但更重要的是,minispace是开源的                     ,而X-space的源代码并不开放                    。

说到X-space                    ,我们觉得,pw在功能上虽然足以和dz匹敌              ,但是在论坛的外延上                    ,却比dz落后了好多       。X-space能实现以论坛为中心的个人空间功能      ,而pwblog(已经改名为Lxblog              ,正式版未推出                     ,本文仅以5.1.5版本为例)却和论坛貌合神离      ,帖子推送功能虽然从4.3.2就有了       ,然而却一直不好用                     ,4.x推送以后             ,图片和附件都不正常       ,5.1.5虽然可以推送正常了                     ,然而在论坛中更新的帖子             ,在b0客中却不再出现回帖,可以说推送功能在pwblog中只是一个无用的点缀而已       。

说到底                     ,我们常常希望的只是一个论坛帖子文集功能的方式                    ,pwblog把论坛中的内容重复推送到b0客中,既浪费空间              ,又没有意义                    ,这方面dz远远胜过了 pw      ,值得表扬                    。但minispace的功能还是略显简单了些              ,比如没有文集帖子的分类功能                    、没有首页推荐帖子等等(也许论坛帖子的分类意义不大                     ,不过有总比没有强吧?)

5、防灌水技术

pw5.3终于接受了俺提出的新手注册第N贴以前发帖使用验证码的方式      ,这样既不影响老用户的使用       ,又通过验证码方式来限制恶意灌水机器人              。dz未提供此功能                     ,但是具有可以设定第N贴以后不用自定义问答的功能(dz的验证码很烂             ,根本看不清       ,用自定义问答似乎更好一些)       。

在防止自动注册方面                     ,pw和dz都使用了自定义问答方式防止自动注册的办法             ,具体原理很简单,两者实现的都差不多                    。区别在于                     ,dz要求设置10个以上的问题才能生效                    ,而pw只能设置一个问题              。另外,还有一个区别              ,就是pw可以自定义问答中内部使用的form变量名                    ,可能在防止恶意自动注册方面      ,会更加有效一些。pw的自定义问题只能用于注册              ,而dz的可以用在注册              、发帖和短消息等方面                    。

从目前的具体应用来看                     ,用一个问题就基本上解决了自动注册的问题(长时间实践发现的结果)      ,当然也不排除特大型网站       ,用一个问题容易被攻破的可能性                     ,这方面dz可能就更有效一些                    。只是dz限制要求10个以上才能生效的做法             ,令人费解。

6                    、前台管理功能

pw具备副版主功能       ,不过和一般的思路不同                     ,副版主是由版主任命的             ,这样恐怕会导致权限混乱问题,所以也很少有人用这个功能              。

在前台的管理功能中                     ,pw更方便一些                    ,不仅的主题列表中能进行管理,在帖子内容页面中的管理方式比dz用下拉方式更直观一些                    。而且在一个主题里面删除帖子              ,pw比dz直观多了       。

费解的是                    ,pw5.3版本中移动帖子      ,都会在帖子前面加入移动提示“本帖被 xxxx 从 xxxx 移动到本区(xxxx年xx月xx日)                     ”              ,无法消除                     ,真是难看极了(以前版本没有这个毛病)

dz实现了“沉贴       ”的功能      ,可以把那些偶尔被人翻上来的无用垃圾贴沉下去       ,确实方便多了              。                    。       。       。有次俺在pw中为了沉一个帖子                     ,不得不提前了N个帖子                    。而且dz的版主管理功能             ,加亮       、精华等操作都能一气呵成       ,比pw方便好多              。

7              、所见即所得编辑器

dz5.5和pw5.3开始                     ,不约而同的把所见即所得编辑器换成了ubbcode(两个论坛名称不一样             ,这里用个通俗一点的名称,暂称为UBBCode)方式的编辑器                     ,而放弃了原来的HTML可视化编辑器       。

说起来                    ,这个ubbcode可视化编辑器确实解决了以前采用代码方式,无法可视化              ,导致好多非IT人士发帖无法控制格式;而和动网一样使用HTML方式                    ,又产生大量冗余代码和安全性隐患的问题                    。

不过造成的后果却是      ,在转贴的时候              ,以前可以直接从别人的网页上                     ,连图片带文字一起转过来      ,却是非常方便       ,虽然有盗链之嫌              。换成了这种编辑器                     ,再也没法那么方便了             ,因此在换了编辑器以后       ,官方论坛中是怨声载道一片。                    。                    。。而且新的编辑器还有好多小BUG                     ,更加是引起了广泛不满(另注:用了一段DZ后发现             ,dz 5.3的所见即所得编辑器好像存在很多问题,几乎无法用                     ,这方面可能还不如pw的编辑器好用一些)

8                    、附件上传和所见即所得功能:

pw的附件还是只能提交帖子上传以后才能进行图文混排                    ,这方面dz要好的多,可以上传前就进行混排              ,方便多了

dz对不参与上传的图片附件还是显示太多信息                    ,看起来影响美观(似乎是受vbb和phpbb的影响比较大)              。而pw只是显示了“图片              ”字样和描述信息      ,但是更恶心的是              ,却把这些图片放到正文文字上方                     ,真是屡教不改啊

9       、附件防盗链技术的分析:

dz采用了隐藏图片地址      ,和检测访问来源(可选)的办法来防盗链       ,应该说服务器负担比较大                     ,效果还行             ,但不能彻底解决问题                    。

pw用的办法更简单       ,但更有效一些:就是定期或者自动修改附件目录名                     ,应该说这是一个投资少见效快的好办法             ,技术上也很简单       。不过最新的pw5.3版本也引入了隐藏附件地址的方式,后台也似乎无法关闭此项功能                     ,似乎有点画蛇添足的味道了              。                    。       。       。

发现dz也可以在后台手工修改附件目录                    ,也可以起到一定效果,只是没有自动修改的功能                    。

10       、广告功能:

dz比pw要好一些              ,广告功能更完善一些              。比如贴内广告                    ,在帖子下面的位置类似动网的位置      ,看起来更整齐一些              ,而pw的位置就让帖子布局显得比较凌乱                     ,不好看       。dz的贴间广告可以插入大的Google Banner广告      ,或者其它图片形式的广告       ,展示效果很好                    。

相比dz                     ,pw广告的插入位置更少一些             ,效果也差一些              。

11                    、头像显示:

dz不能限制上传头像的长宽尺寸       ,只能限制总像素数                     ,显得不够灵活             ,不如pw方便。而且超出了一定尺寸的头像,被自动缩放和拉伸了                     ,看起来很难看                    。而且 dz还自动给头像加了一个边框                    ,甚是恶心                    。可见dz把简单的事情给弄复杂化了,其实只要和pw一样              ,限制其尺寸                    ,根本不需要拉伸。

12              、附件尺寸限制:

pw只能设定所有附件的尺寸      ,而dz可以对个别格式的附件设定上传尺寸              ,比较灵活一些                     ,特别适合一些flash网站      ,或者技术型网站(比如上传大尺寸图纸等)              。

13       、词语过滤:

pw只能使用普通方式过滤       ,不支持大小写(很简单的事情                     ,官方就是不办             ,举手之劳啊)                    。

而dz不仅能识别大小写       ,而且具有了一定的模糊识别功能                     ,相当不错了       。当然             ,要是能直接支持正则表达式就更爽了              。

14                    、自定义代码功能:

pw至今不支持自定义wincode代码,比较僵化                    。要增加功能                     ,就只能修改js文件                    ,太过麻烦       。       。                    。              。

dz在这方面做的比较完美,要增加或者减少代码              、修改播放界面尺寸都很容易              ,在后台设置一下就可以了

15、回收站功能:

dz可以设定自动清理                    ,而pw不能

16                    、IP来源显示功能:

dz的IP地址和来源显示类似动网      ,看起来不太方便              ,需要点击小电脑图标才行       。还是pw的IP地址来源显示看起来比较舒服一些                    。

17                    、防CC攻击:

pw早在4.3.2就增加了抗CC攻击功能                     ,而且设置起来比较简单      ,新手也能看懂              。当初俺就是因为这个原因才用了pw。

dz5.5虽然号称带有cc攻击防护       ,不过看起来比较难于理解                     ,在后台找了半天也没找到             ,估计新手是操作不了的                    。当年某著名站长论坛(用dz)可就是被CC攻击搞的长期开不了张的       ,看起来dz的防CC攻击功能还有待改进                    。

18、备份功能

pw能支持对pw程序以外的数据表进行备份                     ,而且判断标准不是根据表前缀。可以单独备份pw表以外的数据表             ,对于那些建立了新表的插件,备份数据超级容易                     ,这方面比较人性化              。

dz只是根据表前缀来进行备份                    ,比如你设置一个表,叫做cdb_test              ,那么它会把它认为是论坛数据表而进行备份                    。但是如果你设置一个表                    ,叫做test      ,那就自己想办法去吧       。              。                    。       。

但是dz比pw强的是              ,备份可以压缩                     ,压缩后下载和转存备份文件应该会节省巨大的空间和时间      ,对于超大型论坛应该是非常管用的       。dz备份可以指定文件名       ,而且备份数据用十六进制表示(安全一些                     ,但是占用空间会大一些)             ,估计导入和恢复的中文内码问题就不会存在了                    。

另外       ,dz还可以备份MySQL Dump备份(不推荐使用)              。

19              、文件和数据库校验:

dz内置了文件和数据库校验的功能                     ,pw只是官方提供了一个文件校验工具             ,不过用起来有点莫明其妙,有时候提示使用的函数在php文件中根本不存在

20                    、主题推荐和相关贴功能:

dz通过qihoo实现了相关贴的功能                     ,而且还可以支持主题推荐                    ,这方面比pw强了很多       。

21       、模版和风格设置

phpwind可以在后台设置风格CSS文件,虽然新手不太容易上手              ,但确实还是比较方便的                    。

dz更进一步                    ,把css的内容给解释成了表单的形式      ,让新手也能操作              ,不过带来的缺点更加大了:如果你想在CSS中增加控制(比如调整行间距等)                     ,就不知道该怎么弄了      ,只好去修改模版              。好在dz还提供了一个附加功能:在后台可以直接修改模版       ,而且编辑界面中还带搜索功能                     ,总算是亡羊补牢了

dz以较大优势在功能上超过pw             ,而且在dz有些胜过pw的功能上       ,好多都是以较大优势取胜。

四              、总结

总体来说                     ,dz在功能上             ,界面上,技术上                     ,论坛功能外延上                    ,都胜过了pw                    。但pw也并非一无是处,其抗CC攻击功能              ,简洁快速的界面                    ,强大的管理功能      ,独到的防盗链技术              ,都很有特色                    。所谓仁者见仁                     ,智者见智      ,选择pw还是dz       ,仍然是一个个性化的问题                     ,具体取决于你对他们的某项特点是否看重。

另外             ,感觉dz在浏览器兼容性上有点小问题       ,有时候会出现提示                     ,什么从来路不明的什么东西提交信息             ,检查norton internet security配置之类的烦人问题,而且dz的验证码太恶心                     ,根本看不明白                    ,都赶上动网的烂验证码了,基本上没法用              ,只好关掉算完              。

需要说明的是                    ,如果是新手      ,需要选择论坛              ,还是建议选择dz                     ,因为功能比较多      ,论坛的外延开发的比较好(supsite/X-space做的很不错)       ,用起来方便一些                     ,而且模版修改起来比较简单             ,容易上手                    。

pw只是适合老手       ,和对论坛外延功能不太感兴趣的那些人使用                     ,而且pw的模版修改起来相当困难             ,稍有不慎就容易出错,对新手不合适       。

PW适合娱乐站                     ,速度快                    ,功能多,官方集成各种插件              ,几乎不用维护

pw现有的功能=dz+银行+多附件上传+在线会员统计+特殊用户组添加+节日送礼

更多编程相关知识                    ,请访问:编程教学!!

创心域SEO版权声明:以上内容作者已申请原创保护,未经允许不得转载,侵权必究!授权事宜、对本内容有异议或投诉,敬请联系网站管理员,我们将尽快回复您,谢谢合作!

展开全文READ MORE
确定信号时差图解法(【通信原理】确知信号的性质分析与研究)