帝国cms二次开发常见问题
2016-06-15来源:易贤网

1、如果开启了“关闭前台所有动态页面”选项,二次开发的文件如何能访问?

答:可以在开发的程序代码顶部一行加:define('empirecmsadmin','1');就可以不受此设置影响。

2、loadlang()导入语言包文件路径是如何表示的

答:导入语言包文件地址是相对于 ../data/language/ 目录,例子:

(1)、如果程序文件在/e/extend/目录,比如:/e/extend/a.php,则导入语言包可以用:

require loadlang('pub/fun.php');

(2)、如果程序文件在/e/extend/helloworld/目录,比如:/e/extend/helloworld/a.php,则导入语言包可以用:

require '../'.loadlang('pub/fun.php');

(3)、如果程序文件在根目录,比如:/a.php,则导入语言包可以用:

require ecms_path.'e/data/'.loadlang('pub/fun.php');

3、$editor声明目录层次变量是如何表示的:

答:此变量如果没有使用printerror()等函数可以不设置。

默认$editor变量为0。

当程序文件在/e/path/目录,$editor不用设置,也就是用默认0。

当程序文件在/e/path/path2/目录,$editor=1。

当程序文件在/e/path/path2/path3/目录,$editor=2。

当程序文件在/e/path/path2/path3/path4/目录,$editor=3。

4、导入文件介绍:

导入栏目、专题、标题分类缓存文件:/e/data/dbcache/class.php

导入会员组缓存文件:/e/data/dbcache/memberlevel.php

导入标签函数文件:/e/class/t_functions.php

导入编译标签文件:/e/class/functions.php

5、推荐变量过滤处理

(1)、数字型变量可以用(int)或intval函数处理,例子:

$page=(int)$_get['page'];

$page=intval($_get['page']);

(2)、带小数点的数字型变量可以用(float)或floatval函数处理,例子:

$money=(float)$money;

$money=floatval($money);

(3)、字符型处理:

不带空格或其他特殊符号的,用reppostvar()函数过滤带空格或其他特殊符号的用:

reppostvar2()函数过滤

写入数据库的用:

reppoststr()函数过滤

推荐信息