网上搜罗一下,也没发现有详细的分析文件或者分析列表。既然php代表了开源代表了共享。为什么不这么做呢?
况且DZ的代码风格非常顺畅,看起来很舒适。而且有很多好的习惯和思路在里面,能学到很多东西.
QUOTE:
SamPeng's blog。将开源精神进行到底这几天消失就是搞他去了。。。喜欢鄙人这些还没完成的教程的朋友,欢迎常来坐坐。加入收藏和邮件订阅是最好的选择
开始从根目录下的index.php开始分析。我知道DZ采用了自创的模板系统。而且非常好用。但我不打算根据网上朋友的经验从include文件包开始分析。因为思路上太散了。所以我是根据页面使用习惯开始分析代码的。预计3天时间能出另一部分。
这一系列贴是我的初步分析篇。只是对其结构和代码组建思维以我个人的想法进行简单的分析。等全部工作完成,按现在的速度算(因为我也要上班,没时间天天扑上面)。一个月全部的初步分析篇大致能完成。然后接下来的工作是根据初步分析进行仔细的分析和应用。大致上是这样安排我的php自学过程的。
希望这点东西对和我一样学习方法的朋友有效。
事实上我建立了一个文件目录及作用表,但现在分析的内容比较少。所以暂时不发上来。等全部搞完了再发布。
说明:是基于最新的DZ6.1的核心代码!文件上我根据我自己的判断有的函数有的过程每一步都详细说明,有的并没有说得很清楚只是说明这个函数的大致作用。如果想根据我的的注释版来分析。注释就是作为各位的一个参考元素。如果有没有注释正确的,请跟贴说明。谢谢。附上我的总结笔记就是用来分享我从代码中学到的东西
希望有和我同样兴趣研究DZ的志同道合者发论坛小刀给我。。众人拾柴火焰高
新入成员组。感谢以下人士一起开展分析工作:
QUOTE:
lxylxy888666 fising
分析计划:
QUOTE:
最近太忙了。奔丧用了几天,公司的事也用了几天。但还是挤出时间来做注释分析工作。下面附录文件是暂时已知的文件结构文件,供参考,未完成
注意:鄙人的文件编码是用的UTF-8.可能你打开是乱码。请用DW将文件转换成DW才可以。因为我为了避免文件的乱码问题,统一所有设置全部是utf-8.一时忘记了改格式。
如果你的eclipes默认的不是utf-8.通过svn打开肯定是乱码。请下载下来。谢谢
提供SVN.需要和我一起更新的请论坛小刀我。我提供密码
SVN是将我的根目录作为存储库,所以是和我的文件更新速度一样的。当然,你不知道我在更新哪个文件也是没用的=。=简单的说,其实我是又偷懒了又没偷。偷懒,是因为我可以改多少放在svn上面多少。没偷懒是因为当我完成的时候,所有文件都将更新完毕。。省了我整理的问题
QUOTE:
http://dzsampeng.googlecode.com/svn/trunk/完成列表:完成的楼层有链接,未完成的没链接
QUOTE:
2楼:1、DZ论坛核心代码分析计划--install包篇
简单描述:这个包进过分析和改变,可以了解DZ的安装系统是如何操作的。自己编写或者进过修改可以成为自己的安装文件
3楼:2、DZ论坛核心代码分析计划--核心文件global.func.php篇
简单描述:非常重要的全局函数文件。参考文件中的函数封装。了解DZ对字符串等全局的处理方式和过程。
4楼:3、DZ论坛核心代码分析计划--核心文件common.inc.php篇
简单描述:DZ论坛的指挥性文件,几乎所有文件都引入这个文件。最值得学习的是其对安全性的重视和处理
5楼:4、DZ论坛核心代码分析计划--include包(一)
简单描述:DZ论坛的include包,cache.func.php缓存文件、XML.class.phpXML解析器、counter.inc.php论坛计数器、security.inc.php:安全信息等级
6楼:5、DZ论坛核心代码分析计划--include包(二)
简单描述:trade.func.php chinese.class.php db_mysql_error.inc.php f t p.func.php
7楼:6、DZ论坛核心代码分析计划--include包(三)
8楼:7、DZ论坛核心代码分析计划--include包(四)
9楼:8、DZ论坛核心代码分析计划--include包(五)
10楼:9、DZ论坛核心代码分析计划--admin包(一)
11楼:10、DZ论坛核心代码分析计划--admin包(二)
12楼:11、DZ论坛核心代码分析计划--admin包(三)
13楼:12、DZ论坛核心代码分析计划--根目录(一)
14楼:13、DZ论坛核心代码分析计划--根目录(二)
15楼:14、DZ论坛核心代码分析计划--根目录(三)
16楼:15、DZ论坛核心代码分析计划--modcp包
17楼:16、DZ论坛核心代码分析计划--forumdata包
18楼:17、DZ论坛核心代码分析计划--API包
19楼:预留
20楼:预留
郑重申明。。可以转发鄙人的这个分析贴。因为我拿出来就是共享的。
请共享者注明作者:SamPeng
[ 本帖最后由 某个人 于 2008-11-11 16:40 编辑 ]
DZ论坛文件结构.rar
(2008-10-17 09:24:15, Size: 2.88 KB, Downloads: 882)








最新回复
Install篇
下面附上的是已经写好描述的源文件。。。很多值得借鉴的思想。就在这里留个坑吧。。。因为我电脑上东西乱仍。。某一年的某一天,我一不小心把我整合代码盘全删了。。。。很崩溃很崩溃。
分析没到每一行,那样太琐碎了。这样分析只是分析他的思路和思想。方法才是最重要的。函数自己随手就可以查的。
下面呢,是我的分析日记。2天就分析完了。挺简单的。不过很多东西我很少用,却及其有用。值得借鉴。
QUOTE:
另,在分析Install文件包的时候我发现DZ程序员的思维确实很不错。考虑很多错误出现的情况并且进行处理。说实话这点我还真做不到。值得学习。并且其考虑了数据库或者php版本问题,在db_mysql.class.php文件里就使用了一个动态设定数据存储编码的方法。大家可以借鉴一下。[ 本帖最后由 某个人 于 2008-10-7 09:39 编辑 ]
(2008-10-07 09:39:52, Size: 61.7 KB, Downloads: 1680)
因为这个包代码很多。只把个人重要的仔细分析了每个代码块。
在上一个文分析计划里,我其实少上两个文件,一个是DZ论坛全局变量申明表。DZ论坛文件作用表。DZ论坛函数调用处表。
因为分析的东西暂时比较少,所以没有上上来。等全部搞完再说吧。
学习日记如下:
只更新一部分。。。。还有另一部分。。下午更新上来
QUOTE:
更新错误:这些错误是我分析在其调用的地方得知的错误。但不可能我发现一点改一点,所以在这里说明QUOTE:
谢谢下面这些人的帮助QUOTE:
[ 本帖最后由 某个人 于 2008-10-8 16:07 编辑 ](2008-10-08 16:07:06, Size: 17.7 KB, Downloads: 1085)
真正分析起来,其实内容并不多。大多是条件判断和指挥类的语句。引入大量文件。
理解这个文件可以更好的理解整个DZ的论坛是如何运作的。几乎每个页面都引入了这个文件的。
说实话,越往后面看我头越大。。。大量的多层3维条件判断。。嘿嘿,不知道说错没,就是?:这种类型的。有的镶嵌了4层之多。头晕啊。不过大致完成了。
这个文件最值得学习的是其对安全性的重视和处理。。
下面先上写好注释的文件
其他文件整理后随后发上来。不过这个足够说明很多东西了。
写得不对的地方望各位高手指出
[ 本帖最后由 某个人 于 2008-10-7 16:42 编辑 ]
(2008-10-07 16:42:31, Size: 8.07 KB, Downloads: 1115)
cache.func.php文件没分析完,但具体缓存的操作原理是将配置文件从数据库中取出,经过特定的处理后缓存进内存,再然后读取到各数据库或者页面之中。
security这个文件就是防止多次刷新的安全信息等级文件拉。大家可以参考一下他的防多次刷新机制的运行模式。
因为时间比较紧。所以不过多说明,具体看我的分析文件。
[ 本帖最后由 某个人 于 2008-10-17 09:34 编辑 ]
(2008-10-17 09:34:14, Size: 26 KB, Downloads: 892)
今天上的是4个包。
trade.func.php j交易接口的提供等操作。
ftp.func.php ftp上传的相关函数,打开,关闭,登陆等等ftp的操作这个文件包里都有说明
chinese.class.php 这个类包我只看明白他的流程,具体怎么转换的涉及到位运算,看不明白。。但我想我的注释应该足够说明了。总之可以直接拿来用的
db_mysql_error.inc.php 数据库链接发生错误的文件包。挺简单的。
[ 本帖最后由 某个人 于 2008-11-11 16:35 编辑 ]
(2008-11-11 16:35:27, Size: 10.5 KB, Downloads: 187)
但是不仅仅是写写注释,我还要总结。所以速度慢了点
[ 本帖最后由 某个人 于 2008-10-7 09:28 编辑 ]
[ 本帖最后由 某个人 于 2008-10-7 09:29 编辑 ]
[ 本帖最后由 某个人 于 2008-10-7 09:29 编辑 ]
[ 本帖最后由 某个人 于 2008-10-7 09:29 编辑 ]