開發Xoops模組最常用到PHP常數因該就是在語系檔中了,如果遇到常數中有變數又有常數,那通常是用.串接起來,例如下面的CODE
define("_MA_TEXT01","今天是");
define("_MA_TEXT02","天氣是");
define("_MA_TEXT03","好天氣");
define("_MA_TEXT04","壞天氣");
define("_MA_TEXT05","祝美好的一天");
$weather[0]=_MA_TEXT03;
$weather[1]=_MA_TEXT04;
echo ""._MA_TEXT01."".date("Y-m-d H:i:s")."".$weather[0].""._MA_TEXT05."";
輸出結果:今天是2018-01-04 15:38:56好天氣祝美好的一天
其實可以在PHP常數中使用%s代替變數,再用sprintf()函數吧常數變數組合再一起就好了,程式也精簡很多。
以上面的範例改為PHP常數中加入變數的寫法如下:
define("_MA_TEXT01","今天是%s天氣是%s祝美好的一天"); // %s是帶入PHP變數
define("_MA_TEXT03","好天氣");
define("_MA_TEXT04","壞天氣");
$weather[0]=_MA_TEXT03;
$weather[1]=_MA_TEXT04;
echo "".sprintf(_MA_TEXT01,date("Y-m-d H:i:s"),$weather[0]).""; //串接PHP變數與常數
輸出結果一樣是:今天是2018-01-04 15:38:56好天氣祝美好的一天
但原本要寫5行的PHP常數現在只要3行而已,如果要串的變數越多則越精簡,有需要的朋友參考看看!!
教學撰寫:徐嘉裕 Neil hsu
留言
張貼留言