phpcms v9英語語言包應用詳解

2022-03-07 08:07:34 字數 1459 閱讀 3815

phpcms英文二次開發之語言包詳解

phpcms英文的語言包使其成為國際化的cms,從phpcms v9.1開始,發布了英文版。但很遇憾的是,到目前為止,phpcms還沒有實現語言切換的功能,比如中英語言切換等。我認為phpcms實現了語言的切換功能才能稱得上真正意義國際化cms。雖然如此,和國內的其它cms相比,phpcms已經是最為國際化的了。

phpcms v9英語語言包位置:

1、phpcms\languages\zh-cn    中文語言包

2、phpcms\languages\en    英文語言包

phpcms v9英文語言包建立

在phpcms v9二次開發之模型類的應用,講到了足球等級的模型類的應用,現在為其新增乙個中文語言包,其步驟如下:

1、phpcms\languages\zh-cn  目錄下新建乙個檔案level.lang.php,注意「level」與模組名稱相對應。

2、在level.lang.php寫上如下**:

**如下:

<?php $lang['level_name'] = '等級';

$lang['edit_level'] = '編輯等級';

$lang['operations_manage'] = '管理操作';

$lang['allselect'] = '全選';

$lang['level_deleted'] = '等級批量刪除完成!';

?>

到此,乙個語言包就建立完了,真的很簡單,接下來我我來看一下它的應用。

模組語言包一般是用在與之相應的模組的模板上,好比乙個區域性變數,系統語言包適用所有模組模板,就像全域性變數一樣。下面是足球級別後台列表模板**片斷:

**如下:

<?php echo l('allselect')?>

id <?php echo l('level_name')?>

<?php echo l('operations_manage')?>

我們上面定義的語言包中"$lang['level_name'] = '等級';",就是作為函式「 l('level_name')」的引數,其輸出的資料為「等級」。

當然,我們也不一定非要建立語言包,非正式的話也可以直接賦與引數,如:

「<?php echo l('level_name')?>」,可以寫成「<?php echo l("等級")?>」,甚至可以更直接寫成等級

phpcms v9英語語言包的作用

上面說過,語包的寫法和其它替**法,當然,引數位元組小的話可以直接給l()函式賦與引數,但是如果引數位元組太大呢?這樣在模板上就顯得凌亂了。語言包一經定義,可以重複在多個模板上使用。前面也提到,甚至可以不用語言包和「l()"函,直接寫,不過不建議這樣,一般來說不會有什麼問題,但我在除錯過程中偶爾也會出現一些意想不到的亂碼。顯然語言的作用有:

1、開發國際版cms

2、使模板整潔美觀

3、方便模板修改,減少工作量

4、杜絕因為編碼而引起的亂碼問題

PHPCMS V9 注射利用

在用bugscan 白帽子神器 檢測朋友 的時候碰到這個authkey。順便把利用 給大家分享下。本指令碼僅供白帽子安全測試使用,如有用於非法途徑,與作者無關 小白第一次寫東西,大牛勿噴 獲取檢測網域名稱 domain url domain url post url echo 判斷網域名稱是否為空,...

PHPCMS V9 加密規則

phpcms v9 加密規則 加密方式 md5 md5 password encrypt 第一步 對輸入的密碼32位小寫 md5 對輸入的密碼進行trim過濾 第三步 第二步結果密碼32位小寫 md5 例子 密碼 123456 encrypt vcmkn3 如下 a md5 123456 echo ...

PHPCMS V9 加密規則

phpcms v9 加密規則 加密方式 md5 md5 password encrypt 第一步 對輸入的密碼32位小寫 md5 對輸入的密碼進行trim過濾 第三步 第二步結果密碼32位小寫 md5 例子 密碼 123456 encrypt vcmkn3 如下 a md5 123456 echo ...