最近在给客户用dx2.5二次开发一站,在这过程中,由于dx提供的dx2.5太爽了,也就只要能用diy来撸的,基本会撸上了。啊哈哈,太给力了。不过一些用DIY工具弄的模块在本地能正常,可是到了线上,文章内容型的模块就出不来!!!纠结了好久,觉得会不会是我的设置还是哪里有问题,找了一通,没有结果~突然发页尾的导航及版权信息也没有出来(服务器没有开错误信息打印),怀疑是中间有语法错误.....于是开始咱常用的php单步调试代码:
function singleStep($msg) { echo $msg; exit; }
从
source/module/portal/portal_list.php
开始一路走过
source/function/function_core.php source/function/function_block.php
最后,把问题锁定在
source/function/function_block.php
中的
function block_template($bid)
。再经过使用前面型的
//up code .... echo 1; //exec code ... singleStep(2); //after code..
一点点的过滤,最后查到在文件353行发现了这么一句:
$blockitem = $blockitem['fields'] + $blockitem;
作者,没有对$blockitem['fields']进行是否为数组,就直接进行了数组的加操作,so~改成:
$blockitem = is_array($blockitem['fields']) ? $blockitem['fields'] + $blockitem : $blockitem;
再去刷新页面,ok 正常了。对付BUG,细心最近要啊~
评论(1)
Theresa To 九九 (2017-06-14)