# 帝国cms常见常用函数

*Published:* 2023-11-29
*Author:* 客服001

#### 温馨提醒

如果文章内容或图片资源失效，请留言反馈，我们会及时处理，谢谢

本文最后更新于2023年11月29日，已超过 180天没有更新



常用[函数](https://www.xarjtc.com/tag/%e5%87%bd%e6%95%b0 "查看函数此标签更多文章")可以帮助你解决许多问题，学会了让你少写几千行代码。

一、esub()截取字段函数

语法：esub(字符串,截取字数,后缀)

说明：后缀为截取字符后附带内容，此参数可以省略。

使用范例：

&lt;?=esub('12345678',6)?&gt;，返回结果为：123456

&lt;?=esub('12345678',6,'...')?&gt;，返回结果为：123456...

二、date()转换时间格式函数

语法：date(时间格式,时间戳)

说明：PHP本身函数，使用说明可以参考：http://cn.php.net/manual/en/function.date.php

使用范例：

&lt;?=date('Y-m-d H:i:s',1277865010)?&gt;，返回结果为：2010-06-30 10:30:10

三、format\_datetime()转换时间格式函数2

语法：format\_datetime(正常时间,时间格式)

说明：和date()的区别是format\_datetime是转换正常时间，而date是转换unix时间戳。

使用范例：

&lt;?=format\_datetime('2010-06-30 10:30:10','m/d')?&gt;，返回结果为：06/30

四、通过ID取得栏目地址函数

语法：sys\_ReturnBqClassname($r,9)

说明：$r为含栏目ID的数组，变量名可任意命名。

使用范例：取得栏目ID=2的栏目地址。

```
<?php
$cr['classid']=2;
$classurl=sys_ReturnBqClassname($cr,9);
echo $classurl;
?>
```

通过ID取得栏目地址的其他方法：

(1)、/e/public/ClassUrl/?classid=栏目ID

(2)、/&lt;?=$class\_r\[栏目ID\]\['classpath'\]?&gt;

五、取得信息内容页地址函数

语法：sys\_ReturnBqTitleLink($r)

说明：$r为含“id,classid,newspath,filename,groupid,titleurl”字段内容的数组，变量名可任意命名。

使用范例：取得信息ID=8的新闻页面地址

```
<?php
$nr=$empire->fetch1("select id,classid,newspath,filename,groupid,titleurl from {$dbtbpre}ecms_news where id='8' limit 1");
$titleurl=sys_ReturnBqTitleLink($nr);
echo $titleurl;
?>
```

通过ID取得信息内容页地址的其他方法：

/e/public/InfoUrl/?classid=栏目ID&amp;id=信息ID

六、提示信息函数1

语法：printerror($error,$gotourl,$ecms,$noautourl,$novar)

说明：

$error：提示信息内容，可以为语言包变量，也可以直接提示内容。

$gotourl：提示信息转向链接地址

$ecms：0为后台提示信息、1为前台提示信息、8为后台提示信息(alert方式)、9为前台提示信息(alert方式)

$noautourl：0为自动转向页面，1为不自动转向页面。此参数可省略，默认为0

$novar：0为提示信息内容采用语言包变量，1为提示信息内容为直接提示内容。此参数可以省略，默认为0

使用范例：

printerror('DbError','http://www.phome.net',1)，前台提示，提示信息内容为语言包DbError变量内容，转向帝国网站

printerror('数据库出错','http://www.phome.net',1,0,1)，前台提示，提示信息内容为“数据库出错”，转向帝国网站

附加说明：

此函数需结合$editor变量来确定目录层次。默认$editor变量为0。

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

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

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

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

七、提示信息函数2 (直接提示内容)

语法：printerror2($error,$gotourl,$ecms,$noautourl)

说明：

$error：直接提示信息的内容。

$gotourl：提示信息转向链接地址

$ecms：0为默认提示信息方式、9为弹出提示信息方式(alert方式)。此参数可省略，默认为0

$noautourl：0为自动转向页面，1为不自动转向页面。此参数可省略，默认为0

使用范例：

printerror2('添加完毕','http://www.phome.net')，提示信息内容为“添加完毕”，转向帝国网站

附加说明：

此函数不需要结合其他变量，可以在任意目录层次使用。不支持使用语言包变量。

八、设置系统Cookie变量函数

语法：esetcookie($var,$val,$life,$ecms)

说明：

$var：为变量名

$val：为变量值

$life：为COOKIE有效时间，单位秒，0为不保存。此参数可省略，默认为不保存。

$ecms：0为设置前台COOKIE变量，1为设置后台COOKIE变量。此参数可省略，默认为0。

使用范例：

esetcookie('mybody','帝国')，定义前台“COOKIE前缀+mybody”变量，变量内容为“帝国”

esetcookie('mybody','帝国',0,1)，定义后台“COOKIE前缀+mybody”变量，变量内容为“帝国”

附加说明：

此设置COOKIE函数会给变量名加上COOKIE前缀，你可也可以直接用PHP本身的setcookie来定义。

九、取得系统COOKIE变量函数

语法：getcvar($var,$ecms)

说明：

$var：为变量名

$ecms：0为设置前台COOKIE变量，1为设置后台COOKIE变量。此参数可省略，默认为0。

使用范例：

getcvar('mlusername')，取得前台登陆会员的用户名

getcvar('loginusername',1)，取得后台登陆管理员的用户名

附加说明：

此取得COOKIE函数是取得变量名加上COOKIE前缀的变量，你可也可以直接用PHP本身的$\_COOKIE\['变量名'\]来取得。

十、取得IP地址函数

语法：egetip()

使用范例：

```
<?php
$ip=egetip();
echo $ip;
?>
```

十一、动态页面显示分页函数

语法：page1($num,$line,$page\_line,$start,$page,$search)

说明：

$num：总记录数

$line：每页显示数量

$page\_line：每页显示分页链接数

$start：预设变量，设置0即可。

$page：当前页码(0为起始页码)

$search：链接附加参数

十二、通过栏目ID取得栏目名和栏目别名方法：

栏目名：&lt;?=$class\_r\[栏目ID\]\['classname'\]?&gt;

栏目别名：&lt;?=$class\_r\[栏目ID\]\['bname'\]?&gt;