系统文件说明c_system_misc.php输出系统(其他)信息

该页面首先清空缓冲区内容,然后使用GetVars函数来获得$GLOBALS数组中对应的值,参数2表示该值的类型。得到的结果赋值给$type

执行 Filter_Plugin_Misc_Begin 的插件过滤函数,参数是$type。

完成之后开始根据$type的值使用switch函数来进行不同的处理

1.值为statistic,判断是否为管理权限,如果没有,输出错误信息(没有权限),否则执行misc_statistic函数

2.值为updateinfo,判断是否为超级权限,如果没有,输出错误信息(没有权限),否则执行misc_updateinfo函数

3.值为showtags,判断是否有文章编辑权限,如果没有,输出404页面,否则执行misc_showtags函数

4.值为vrs,判断是否有杂项编辑权限,如果没有,输出错误信息(没有权限),否则执行misc_viewrights函数

5.值为phpinfo,判断是否为超级权限,如果没有,输出错误信息(没有权限),否则执行misc_phpinfo函数

其他情况直接break处理。

以下内容说明各个函数进行的处理过程

1. 在线更新信息 misc_updateinfo函数,共9行代码

global $zbp; 引用全局$zbp对象

通过URL获得远程更新内容,并赋值到$r

载入插件Configs表

加载缓存

$zbp->cache->reload_updateinfo = $r;

$zbp->cache->reload_updateinfo_time = time();

保存缓存

输出$r

2. 显示网站基本信息misc_statistic函数

global $zbp; 引用全局$zbp对象

如果是超级权限或者是更新模板,如果第一个参数是TRUE则表示是否需要更新而不创建,则在此处执行更新模板且创建模板?乱了乱了

如果不是超级权限,获得当前时间比缓存中上次更新时间超过23小时,则返回权限不足

定义空变量$r

得到公开文章数 $zbp->cache->normal_article_nums

得到置顶文章数组 $zbp->cache->top_post_array = serialize($array);

得到评论数

总评论 $zbp->cache->all_comment_nums

未审核评论 $zbp->cache->check_comment_nums

$all_comments = 总评论

$xmlrpc_address = 得到xmlrpc地址

$current_member = 得到当前用户名

$current_version = 得到类似的版本号 1.5.1 1740 (Zero)

$all_artiles = 得到所有文章

$all_pages = 得到所有页面

$all_categorys = 得到所有分类

$all_views = 得到所有浏览数

$all_tags = 得到所有标签

$all_members = 得到所有用户

P.S.这里的实际是类似于模板变量格式的字符串,将在下面进行替换

$current_theme = 得到当前使用的主题

$current_style =  得到当前主题使用的样式文件

$current_member = 得到当前用户,重复了?

$current_version = 得到版本号,和上面一样?

$system_environment = 得到当前的系统环境值

您的Z-BlogPHP打开了开发模式。此模式下网站有被黑的风险,实际部署在线上的网站请及时关闭开发模式!

$zbp->cache->reload_statistic = $r值

$zbp->cache->reload_statistic_time = 当前时间戳

$zbp->cache->system_environment = 系统信息

$zbp->cache->all_article_nums = 所有文章总数

$zbp->cache->all_page_nums = 所有页面总数

添加 statistics模块,参数为所有文章数,所有页面数,所有分类数,所有标签数,所有浏览数,所有评论数

然后statistics创建模块

最后保存缓存

对上面的模板变量格式进行替换,包括博客HOST,当前用户名,当前主题,当前样式,当前版本,当前环境等,最后输出

从结果看应该就是博客后台网站摘要中的网站信息的内容。

3. 添加文章标签misc_showtags函数

global $zbp; 引用全局$zbp对象

header设置该页面返回内容类型为JS,字符编码为utf-8

然后对ID为ajaxtags的元素设置html内容,其内容为标签列表,然后$("#ulTag").tagTo("#edtTag");';中

#ulTag为标签DIV的ID,#edtTag为文章标签表单。效果为点击标签则将这个标签添加到文章的标签表单中,所以这个函数实在文章编辑或者创建文章页面中使用的。

4. 查看权限页面misc_viewrights函数

global $zbp, $blogtitle; 引用全局$zbp对象,

赋值$blogtitle为博客名称+查看权限字样【点击用户管理->查看选项】

执行 Filter_Plugin_Other_Header 的插件看书

然后先输出用户名和用户级别,然后foreach输出位于$GLOBALS['actions']中的所有权限名称和值,有权限的显示绿色,没权限的显示红色。最后输出执行时间。

5. 输出phpinfo信息页面misc_phpinfo函数

global $zbp, $blogtitle; 引用全局$zbp对象,

$blogtitle 重赋值为博客名称 + -phpinfo

ob_start() 打开输出缓冲区

phpinfo() 执行phpinfo函数

得到缓冲区的内容并删除当前缓冲区,然后赋值给$s

如果PHP解析引擎不是ENGINE_HHVM,则正则匹配body中的内容

以下内容为附加内容,研读html代码。

strpos(GetVars('HTTP_USER_AGENT', 'SERVER'), 'Trident/') 获取HTTP_USER_AGENT字符串,判断Trident/的出现位置,如果出现,则输出

等于Z-BlogPHP 1.5.1 Zero

$GLOBALS['hooks']['Filter_Plugin_Other_Header'] 执行插件函数

$blogtitle等于博客标题

如果PHP解析引擎是ENGINE_HHVM,则输出GetEnvironment函数输出系统信息,否则输出上面正则匹配的body中的内容。

$ca以explode函数分割上面的各种内容(函数)。

foreach输出对应函数的执行结果。

defined检查一个厂里名称是否存在,如果存在,constant输出常量的值

get_defined_constants返回所有当前已经定义的常量数组,键是常量名,值是常量值。参数true表示让此函数返回一个多维数组,分类为第一维的键名,常量和它们的值位于第二维。

$ca = $ca['user']; 这个应该是用户常量分类数组。

然后输出用户常量和使用TransferHTML函数通过正则表达式格式化字符串,参数1是字符串,删除2是正则表达式,这里用的是[nohtml]。 if(defined(trim($value)))echo constant(trim($value));

输出所有全局常量 get_defined_constants

输出所有include加载文件 get_included_files()

输出所有插件过滤接口,以及no specification不规范类型的接口? $GLOBALS['hooks'] ,$badfilter = array_diff_key($badfilter , $ca);

输出系统others信息 php_uname

输出所有类get_declared_classes

输出所有已声明的接口get_declared_interfaces

输出所有已声明的traits get_declared_traits

总之,这个函数可以获得zblogphp系统的很多有用的信息,以后再详细研究之。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 194,670评论 5 460
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 81,928评论 2 371
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 141,926评论 0 320
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 52,238评论 1 263
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 61,112评论 4 356
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 46,138评论 1 272
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 36,545评论 3 381
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 35,232评论 0 253
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 39,496评论 1 290
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 34,596评论 2 310
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 36,369评论 1 326
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,226评论 3 313
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 37,600评论 3 299
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 28,906评论 0 17
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,185评论 1 250
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 41,516评论 2 341
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 40,721评论 2 335

推荐阅读更多精彩内容