Dedecms不能添加新变量 变量名不能为空并且必须为[a-z_]组成
首先,我们要确定一下网站是否是GBK,或者是GB2312,(因为老外认为网页普遍应该是utf-8编码,于是在PHP5.4后 htmlspecialchars函数 的编码参数的默认值改为UTF-8,导致GBK的中文站使用这个参数会为空。因此强制让它使用GB2312编码)
本文讲述dede "变量名不能为空并且必须为[a-z_]组成“ 报错的解决办法
dedecms5.7 稍微新一点的版本更新过以后,在添加新系统变量的时候,出现 "变量名不能为空并且必须为[a-z_]组成!"报错,添加新变量失败。
经过研究,解决这个问题很简单:
编辑dede/sys_info.php(或者/你的后台文件夹/sys_info.php),找到149行的:
preg_match("#[^a-z_]#i", $nvarname)
修改为:
preg_match("#^[^a-z_]#i", $nvarname)
保存,问题解决。
总结:“变量名不能为空并且必须为[a-z_]组成!”错误,是dede更新后出现的小bug,少了个符号。

浙公网安备 33010602011771号