• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • dedecms
  • ecshop
  • z-blog
  • UcHome
  • UCenter
  • drupal
  • WordPress
  • 帝国cms
  • phpcms
  • 动易cms
  • phpwind
  • discuz
  • 科汛cms
  • 风讯cms
  • 建站教程
  • 运营技巧
您的位置:首页 > CMS教程 >建站教程 > ThinkPHP 6.0 多语言优化扩展包的安装与使用

ThinkPHP 6.0 多语言优化扩展包的安装与使用

作者:站长图库 字体:[增加 减小] 来源:互联网

站长图库向大家介绍了ThinkPHP6.0,多语言优化,ThinkPHP扩展包,安装与使用等相关知识,希望对您有所帮助

下面由thinkphp框架教程栏目给大家介绍ThinkPHP 6.0 多语言优化扩展包,希望对需要的朋友有所帮助!


ThinkPHP 6.0 多语言优化扩展包的安装与使用


think-lang

ThinkPHP 6.0 多语言优化扩展包

https://github.com/TLingC/think-lang
特色
  1. 支持通过如 mywebsite.com/zh-hans/ 的二级目录访问对应语言页面。

  2. 支持每种语言的语言包单独成目录,目录下可设有二级目录。

安装

composer require tlingc/think-lang

使用

基础配置

请参照 官方文档 进行相关配置。同时注意如下与官方文档的不同点。

开启和加载语言包

中间件名称为:

'tlingc\lang\middleware\LoadLangPack',

由于多语言通过二级目录访问,使用Cookie保存语言 功能无效。

语言文件定义

自动加载的应用语言文件:

// 单应用模式app\lang\当前语言.phpapp\lang\当前语言\*.phpapp\lang\当前语言\*\*.php// 多应用模式app\应用\lang\当前语言.phpapp\应用\lang\当前语言\*.phpapp\应用\lang\当前语言\*\*.php

请注意此扩展包没有对语言包解析行为进行修改,语言文件的文件名不会影响语言分组,在多个文件中存在相同定义时会导致被覆盖。

路由设置

使用二级目录访问对应语言页面,必须使用路由定义,同时建议开启 强制路由 模式。

use think\facade\Config;Route::view('/', 'index/index');$langs = Config::get('lang.allow_lang_list');foreach($langs as $lang){    Route::rule($lang . '/', 'index/index');    Route::rule($lang . '/welcome', 'index/welcome');}

重写 url 助手函数

在应用公共文件 common.php 中加入。

use think\facade\Request;use think\facade\Lang;use think\facade\Route;use think\route\Url as UrlBuild;function url(string $url = '', array $vars = [], $suffix = true, $domain = false, $lang = true, $replace = false): UrlBuild{    if (!$lang) {        if($replace) {            $explode = explode('/', Request::url(), 3);            $url = $url . $explode[2];        }        return Route::buildUrl($url, $vars)->suffix($suffix)->domain($domain);    }    $lang = Lang::getLangSet();    return Route::buildUrl('/' . $lang . $url, $vars)->suffix($suffix)->domain($domain);}

对比官方提供的助手函数,增加了 $lang 及 $replace 参数。

普通跳转,生成url时会自动带上前方的语言名称。

url('/welcome')

如需仅替换url中的语言名称(如在语言选择器中使用),把 $replace 参数置为 true 即可。

TODO

整合路由定义方法。

整合重写url参数。


以上就是ThinkPHP 6.0 多语言优化扩展包的安装与使用的详细内容


分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • ThinkPHP6.0 重写URL去掉Index.php的解决方法
  • ThinkPHP 6.0 多语言优化扩展包的安装与使用
  • 详解thinkphp6.0.7中怎么使用JWT

相关文章

  • 详解PS进行IOS设计流程的诀窍
  • 你知道Laravel的$this->app以及app()是怎么来的吗?
  • DedeCMS 5.6升级至DedeCMS5.7SP1后类目和发布人不显示
  • 如何解决php md5生成16位出现乱码问题
  • 微信小程序实现点赞业务
  • Photoshop制作时尚绚丽的3D立体字教程
  • DEDECMS注册成功页面加入马上激活链接转向注册邮
  • PhotoShop用滤镜制作一朵抽象的花朵特效教程
  • 浅析EOS区块链柚子钱包前端插件scatter开发
  • 详解thinkphp5.1的URL重写,伪静态设置

文章分类

  • dedecms
  • ecshop
  • z-blog
  • UcHome
  • UCenter
  • drupal
  • WordPress
  • 帝国cms
  • phpcms
  • 动易cms
  • phpwind
  • discuz
  • 科汛cms
  • 风讯cms
  • 建站教程
  • 运营技巧

最近更新的内容

    • Node.js深入学习之浅析require函数中怎么添加钩子
    • Photoshop设计绚丽的3D艺术字教程
    • 织梦DEDECMS无简略标题显示完整标题的实现代码
    • PhotoShop CS6简单制作细线格子纹理字效教程
    • Photoshop使用图层样式制作金属立体字
    • windows登陆界面制作
    • PhotoShop+coreldRAW打造喜迎国庆节海报制作教程
    • MySQL密码加密与解密详解
    • Photoshop制作梦幻效果的光圈教程
    • PHPcms v9安全教程:修改phpcms根目录下的phpcms目录名称

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有