HisiPHP的核心框架是基于ThinkPHP,TP支持多语言,同样的HisiPHP也支持多语言,在TP的基础上对多语言做了后台可视化管理,使用说明如下:
第一步:进入多语言管理界面
* * * * *
![](https://box.kancloud.cn/6753aa597f7e88db7c3d42afd5b65c15_2862x838.png)
第二步:添加新的语言包
* * * * *
HisiPHP默认只有简体中文,你可以根据自己的需要新增其他语言包。
![](https://box.kancloud.cn/5b1aede34d5a60b9f4fdc1240e3b8a57_1348x650.png)
![](https://box.kancloud.cn/c72cb7ad709606b275e4273400c7ac31_1818x976.png)
根据右侧操作提示录入相关内容。
>[info] 如果你只是希望实现前台多语言切换,那么你无需上传语言包。如果你希望后台也支持多语言显示,你就需要上传语言包。上传的语言包格式要求如下(**用en为例**):
第三步:数据库表添加多语言字段
* * * * *
~~~
ALTER TABLE `表名` ADD `lang` VARCHAR(20) NOT NULL DEFAULT 'zh-cn' COMMENT '多语言';
~~~
第四步:写入数据,查询数据
* * * * *
>[warning] 如需写入不同语言的数据时,一定要在后台的右上角切换到你想要的语言版本后(如下图),再进行数据的增删改查操作。
![](https://box.kancloud.cn/95a8d4c9cd800f8bcdba2e2dbf903a4c_562x316.png)
写入、查询示例代码如下:
~~~
// 写入数据
$data = input('post.');
$data['lang'] = HISI_LANG;
Db::name('表名')->insert($data);
// 查询数据
Db::name('表名')->where('lang', HISI_LANG)->find();
~~~
>[info] 如果你的数据表有使用模型,那就在模型里面配置,后续增删改查都不需要在单独配置多语言。
模型示例代码如下:
~~~
<?php
namespace app\cms\model;
use think\Model;
/**
* 文章模型
* @package app\cms\model
*/
class Article extends Model
{
protected $insert = ['lang' => HISI_LANG];
protected function base($query)
{
$query->where('lang', HISI_LANG);
}
}
~~~
语言包结构如下:
~~~
en.zip
├─/system/lang/en.php 系统模块的界面语言文件
├─/lang/en.php 公共语言文件
└─/menu.php 管理菜单语言文件
~~~
>[info] 如需下载示例包,请进QQ群(50304283)下载
- 序言
- 环境配置
- 下载及安装
- 目录结构
- 系统配置
- 多语言
- 命令行(pro版)
- 自动生成模块或插件(build)
- 生成模块
- 生成插件
- 自动生成增删改查(crud)
- 第一步:创建数据表
- 第二步:使用crud指令生成
- 自动生成类库文件(make)
- 生成控制器文件(make:controller)
- 生成模型文件(make:model)
- 生成逻辑文件(make:logic)
- 生成服务文件(make:service)
- 生成验证器文件(make:validate)
- 构建器(pro版)
- 表单构建器(form)
- 表单属性设置
- 添加表单项
- 文本框(text)
- 隐藏域(hidden)
- 密码框(password)
- 文本域(textarea)
- 单文件(file)
- 多文件(files)
- 单图(image)
- 多图(images)
- 开关(switch)
- 单选(radio)
- 多选(checkbox)
- 下拉框(select)
- 标签(tag)
- 日期时间(datetime)
- 颜色选择器(color)
- 富文本编辑器(editor)
- 滑块(slider)
- 评分(rate)
- 穿梭框(transfer)
- 进度条(progress)
- 树形(tree)
- 联动(linkage)
- 自定义html(html)
- 分隔线(line)
- 文字(txt)
- 下拉框增强版(select+)
- 数据表格(table)
- 添加表单分组(group)
- 栅格布局(grid)
- 触发器(trigger)
- 通用上传方法
- 表格构建器(table)
- 表格基础配置
- 添加表头工具栏
- 添加表格筛选
- 页面提示(pageTips)
- 引入 JS 文件
- 引入 CSS 文件
- 渲染额外 JS 代码
- 渲染额外 CSS 代码
- 模块开发
- 1.生成模块
- 2.创建菜单
- 3.创建控制器
- 后台通用方法
- 插件开发
- 1.新建插件
- 2.插件配置
- 3.插件控制器
- 4.插件模板
- 5.插件钩子
- 模板替换变量
- 公共函数库
- 后台通用JS方法
- 常见问题
- 官方模块
- CMS内容管理模块
- 目录结构
- 模板标签
- API接口
- 栏目页/内容页
- 小程序发布
- 官方插件
- 第三方登录
- excel插件
- 万能采集
- 采集规则
- 采集内容