最近下载了最新版本的weiphp3.0,进行微信公众平台的二次开发,一路安装,配置都很顺利,但是在编辑完自定义菜单进行发布时,提示如下错误:POST的数据包为空 44002
官网论坛搜索也有人遇到这个问题,官网回复暂未修复。于是找到自定义菜单插件的源码,摸索了一下,发现是function json_encode_cn有问题:经过json_encode_cn函数处理的数组数据会变为空。
解决方法:
打开文件:/weiphp3.0/Addons/CustomMenu/Controller/CustomMenuController.class.php,找到第83行左右,修改方法:function json_encode_cn:
如果php的版本在5.4+
function json_encode_cn($data) { $data = json_encode ( $data ,JSON_UNESCAPED_UNICODE); return $data; //return preg_replace ( "/\\\u([0-9a-f]{4})/ie", "iconv('UCS-2BE', 'UTF-8', pack('H*', '$1'));", $data ); }
否则:
function json_encode_cn($data) { $data = json_encode($data, JSON_UNESCAPED_UNICODE); return urldecode($data); //return preg_replace ( "/\\\u([0-9a-f]{4})/ie", "iconv('UCS-2BE', 'UTF-8', pack('H*', '$1'));", $data ); }