帝國CMS常用函數介紹


一、esub()截取欄位函數
語法:esub(字串,截取字數,後綴)
說明:後綴為截取字元後附帶內容,此參數可以省略。
使用範例:
<?=esub('12345678',6)?>,回傳結果為:123456
<?=esub('12345678',6 ,'...')?>,傳回結果為:123456...


#二、date()轉換時間格式函數
語法:date(時間格式,時間戳記)
說明:PHP本身函數,使用說明可以參考:http://cn.php.net/manual/en/function.date.php
使用範例:
<?=date('Y-m-d H:i:s',1277865010)?>,回傳結果為:2010-06-30 10:30:10


#三、format_datetime()轉換時間格式函數2
#語法:format_datetime(正常時間,時間格式)
說明:和d​​ate()的差別是format_datetime是轉換正常時間,而date是轉換unix時間戳記。
使用範例:
<?=format_datetime('2010-06-30 10:30:10','m/d')?>,傳回結果為: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)、/<?=$ class_r[欄位ID]['classpath']?>


#五、取得資訊內容頁位址函數
語法: 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&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取得欄位名稱和欄位別名方法:欄位名稱:<?=$class_r[欄位ID]['classname']?>欄位別名:<?=$class_r[欄位ID][' bname']?>