爱程序网

PHP开源系统学习之fluxbb_1

来源: 阅读:

最近一直忙于做项目,虽说做了点新东西。感觉自己进步不是很大,总体水平还是跟半年前差不多,想到的东西跟以前差不多,写出来的东西也跟以前差不多。只是现在做的东西多些,比以前敢做了。

近期准备利用点时间,读读一些开源系统,之前一直想学习下discuz,无奈多次放弃。还是对老外的感兴趣,虽然自己英语差的不行,之前也做过wordpress的二次开发,这次准备对fluxbb下手。啥也不说了,直接上场。

整体结构是面向过程写的,自己也喜欢这样的风格,老外不少优秀的开源系统都是这样的风格,wordpress也是。

在fluxbb中引入的文件一般都省略“?>”结束

首先分析的是common.php及相关文件(定义常量、引入函数库、建立数据库连接、环境检查等)

//关闭魔术引用(如已开启),php 5.2及以下默认开启

//过滤POST、GET等,此处用到array_map(),如果是上传文件另做处理

 1 // Turn off magic_quotes_runtime 2 if (get_magic_quotes_runtime()) 3     set_magic_quotes_runtime(0); 4  5 // Strip slashes from GET/POST/COOKIE/REQUEST/FILES (if magic_quotes_gpc is enabled) 6 if (!defined('FORUM_DISABLE_STRIPSLASHES') && get_magic_quotes_gpc()) 7 { 8     function stripslashes_array($array) 9     {10         return is_array($array) ? array_map('stripslashes_array', $array) : stripslashes($array);11     }12 13     $_GET = stripslashes_array($_GET);14     $_POST = stripslashes_array($_POST);15     $_COOKIE = stripslashes_array($_COOKIE);16     $_REQUEST = stripslashes_array($_REQUEST);17     if (is_array($_FILES))18     {19         // Don't strip valid slashes from tmp_name path on Windows20         foreach ($_FILES AS $key => $value)21             $_FILES[$key]['tmp_name'] = str_replace('\', '\\', $value['tmp_name']);22         $_FILES = stripslashes_array($_FILES);23     }24 }

相关文章列表: