ThinkPHP語言如何實現(xiàn)你了解過嗎?

      網(wǎng)友投稿 1117 2022-05-30

      最近項目比較忙,就沒有怎么寫文章。本文主要內(nèi)容為多語言的后臺是如何實現(xiàn)的。

      ThinkPHP多語言如何實現(xiàn)你了解過嗎?

      實現(xiàn)多語言后臺

      前言

      一、后臺實現(xiàn)多語言

      二、視圖切換語言

      三、測試

      四、總結(jié)

      前言

      公司需要寫一個多語言后臺,以前也沒做過,于是到面向百度了一下。這是用了TP框架倆年了,第一次發(fā)現(xiàn)框架是自帶的多語言切換功能。這里著實給點(diǎn)一個贊。

      接下來我們來實現(xiàn)一下這個功能。

      一、后臺實現(xiàn)多語言

      使用框架為v5.1.38 LTS

      來到配置文件config/app.php可以看到關(guān)于語言的配置信息就只有這倆個參數(shù)。

      lang_switch_on這個參數(shù)是自動監(jiān)聽的瀏覽器語言,

      default_lang關(guān)于這個參數(shù)就是在沒有切換其它語言之前就直接默認(rèn)中文

      配置文件了解之后我們需要在需要的模塊創(chuàng)建lang目錄,并且配置對應(yīng)語言的語言包。

      這里咔咔只配置了英文和中文 如還需要其它語言可自行添加即可。

      到這一步你會發(fā)現(xiàn)從頭到尾都沒有一個參數(shù)說是配置語言列表的參數(shù)。配置文件也沒有找到。

      但是在文檔里你可以看到這行代碼。我們?nèi)ピ创a看看

      在源碼中就可以看得明白,語言的cookie的name值也是固定的,并且cookie的有效期時間為3600,這些都是需要根據(jù)自己項目進(jìn)行調(diào)整的。

      最重要的是看允許語言列表。我們繼續(xù)追溯這個變量

      在文件thinkphp/library/think/Lang.php最后我們就可以看到一個方法,這個方法也正是文檔給出的一個方法

      由于我們整個后臺都需要使用多語言,所以我們需要在common中進(jìn)行配置

      二、視圖切換語言

      在視圖模板里直接調(diào)用languageChange方法

      在視圖中有一個變量為$languageName,這個變量是咔咔直接從配置文件直接取出來的,后期會調(diào)整到數(shù)據(jù)庫中。

      然后在控制器寫方法changeLanguage,用來處理語言切換后的cookie改變

      此時我們的后臺頁面就是這樣的

      三、測試

      在經(jīng)過上面的操作之后,我們就可以根據(jù)自己設(shè)置的語言包來進(jìn)行語言切換了

      在模板中我們就需要使用lang這個模板標(biāo)簽進(jìn)行獲取數(shù)據(jù)

      這個是英文狀態(tài)

      這個是中文狀態(tài)

      到這關(guān)于多語言的實現(xiàn)就完成了。

      四、總結(jié)

      上面說了這么多,只是把每一步的步驟給大家寫出來了。

      其中關(guān)鍵點(diǎn)如下

      application/config.php配置文件修改

      在對應(yīng)的模塊里添加lang目錄,并且創(chuàng)建需要的語言包

      視圖進(jìn)行語言切換調(diào)用后臺接口存儲cookie值。保存在think_var

      模板使用lang標(biāo)簽即可

      堅持學(xué)習(xí)、堅持寫博、堅持分享是咔咔從業(yè)以來一直所秉持的信念。希望在諾大互聯(lián)網(wǎng)中咔咔的文章能帶給你一絲絲幫助。

      ThinkPHP

      版權(quán)聲明:本文內(nèi)容由網(wǎng)絡(luò)用戶投稿,版權(quán)歸原作者所有,本站不擁有其著作權(quán),亦不承擔(dān)相應(yīng)法律責(zé)任。如果您發(fā)現(xiàn)本站中有涉嫌抄襲或描述失實的內(nèi)容,請聯(lián)系我們jiasou666@gmail.com 處理,核實后本網(wǎng)站將在24小時內(nèi)刪除侵權(quán)內(nèi)容。

      上一篇:MongoDB中數(shù)據(jù)庫的操作(增刪改查)
      下一篇:JavaScript 獲取鼠標(biāo)點(diǎn)擊坐標(biāo)五種方式及兼容性
      相關(guān)文章
      国产gv天堂亚洲国产gv刚刚碰| 伊人久久综在合线亚洲91| 亚洲国产区男人本色| 亚洲二区在线视频| 久久久久久久亚洲Av无码| 亚洲va在线va天堂va888www| 亚洲综合无码精品一区二区三区 | 午夜亚洲AV日韩AV无码大全| 亚洲va久久久噜噜噜久久男同| 亚洲日韩一页精品发布| 在线观看亚洲av每日更新| 亚洲自偷自偷在线制服 | 亚洲精品无码专区久久久| 亚洲中文久久精品无码ww16| 亚洲精品无码久久一线| 国产V亚洲V天堂A无码| 亚洲AV无码一区二区二三区入口| 亚洲AV无码一区二区乱子伦 | 亚洲Av熟妇高潮30p| 亚洲第一视频网站| 亚洲高清不卡视频| 亚洲国产成人精品久久| 在线综合亚洲中文精品| 亚洲乱码中文字幕在线| 久久亚洲欧美国产精品| 亚洲国产精品成人久久蜜臀 | 国产精品亚洲视频| 亚洲人成人网站色www | 亚洲av无码一区二区三区天堂 | 亚洲视频一区二区| 亚洲中文字幕无码一区二区三区| 久久亚洲国产午夜精品理论片| 亚洲Av综合色区无码专区桃色| 日木av无码专区亚洲av毛片| 亚洲日本香蕉视频观看视频| 亚洲乱码一区二区三区国产精品| 亚洲av无码专区首页| 亚洲人成电影在线播放| 国产成人A人亚洲精品无码| 亚洲日本一区二区| 亚洲AV无码国产精品色|