thinkphp 外部js语言包
Thinkphp php文件也外部js文件公用同一个语言包
一 . php语言包转json数据格式
1.新建验证字段的语言包 application\common\lang\validate-cn.php
<?php
// 验证字段语言包 中文
return [
'validate'=>[
'name' => [
'empty'=> '用户名不能为空',
'length' => '用户名长度6-20字符'
], 'email' => [
'empty' => '邮箱不能为空',
'format' => '邮箱格式不对'
],
'password'=>[
'empty' => '密码不能为空',
'format' => '密码长度为6-20字符'
],
]
];
2.zh-cn 导入语言包validate-cn.php数据
<?php
/**
* 全局语言包
* zh-cn
* */
$lang = include(APP_PATH . 'common/lang/validate-cn.php');;
$data = [
'success' =>'执行成功 ^_^',
'error' => '执行失败 (┬_┬)', 'confirm' =>[
'' => '是',
'' => '否',
], 'check' =>[
'' => '已审核',
'' => '未审核',
'' => '禁用'
],
'sex' =>[
'' => '保密',
'' => '男',
'' => '女'
]
]; return array_merge($lang,$data);
这么做的目的是把“常用语言包”和“字段验证语言包”方在不同的文件里,然后合并数据。在Thinkphp方法里面或者初始化的地方转json数据
public function _initialize()
{
// 实例化验证语言包
$lang = lang('validate');
$validate = json_encode($lang); // 转json字符串
$this->assign('validate',$validate);
}
并且把变量进行实例化,下面html页面会把实例化的变量传递个js (建议放在全局共享html页面),加入以下代码
<script>
// Thinkphp 语言包 传递个js
var language = '{$validate}';
</script>
二. 外部js接收php的json语言包数据 common.js
var lang=eval('('+language+')');
alert(lang.email.empty);
输出:邮箱不能为空
thinkphp 外部js语言包的更多相关文章
- thinkphp 3.23语言包加载
模块home: 1.config 里添加 配置 //'配置项'=>'配置值' 'LANG_SWITCH_ON' => true, // 开启语言包功能 'LANG ...
- thinkphp语言包
1.config.php语言包相关配置. //开启语言包 'LANG_SWITCH_ON' => true, 'LANG_AUTO_DETECT' => true, // 自动侦测语言 开 ...
- thinkphp 语言包丢失
Thinkphp 语言包丢失 造成的原因有那些 1.复制模板 预览时内容出现英文状态 如:show.html 解决:找到lang ,在zh-cn 复制想对应的文件包 改下名称就有可以 如:admin_ ...
- ueditor的工具栏显示乱码解决方法 小问题.. 是你的页面编码与语言包js编码不符所导致的
ueditor的工具栏显示乱码解决方法 小问题.. 是你的页面编码与语言包js编码不符所导致的解决方法:用记事本将ueditor\..\lang\zh-cn\zh-cn.js打开,然后保存为ANSI ...
- 如何设置unobtrusive的语言包
场景:网站是用的validate.unotrusive.js验证的,网站的语言已经切换到繁体了,但是提示语言还是英文. 环境:asp.net mvc4,jquery.validate.unotrusi ...
- 【jqGrid for ASP.NET MVC Documentation】.学习笔记.3.本地化语言包
1 引用本地化语言包 在 js/i18n 文件夹中,提供了大量预定义的语言包.它包括为所有字符串定义的,包括消息,标题,分页信息,搜索/添加/删除 的对话框 文本等. 在jQuery库文件后,在jqG ...
- JS 语言核心(JavaScript权威指南第六版)(阅读笔记)
前言: 对于程序员,学习是无止境的,知识淘换非常快,能够快速稳固掌握一门新技术,是一个程序员应该具备的素质.这里将分享本人一点点不成熟的心得. 了解一门语言,了解它的概念非常重要,但是一些优秀的设计思 ...
- Java知多少(76)语言包(java.lang)简介
Java语言包(java.lang)定义了Java中的大多数基本类,由Java语言自动调用,不需要显示声明.该包中包含了Object类,Object类是整个类层次结构的根结点,同时还定义了基本数据类型 ...
- ES6学习一 JS语言增强篇
一 背景 JavaScript经过二十来年年的发展,由最初简单的交互脚本语言,发展到今天的富客户端交互,后端服务器处理,跨平台(Native),以及小程序等等的应用.JS的角色越来越重要,处理场景越来 ...
随机推荐
- 1. K近邻算法(KNN)
1. K近邻算法(KNN) 2. KNN和KdTree算法实现 1. 前言 K近邻法(k-nearest neighbors,KNN)是一种很基本的机器学习方法了,在我们平常的生活中也会不自主的应用, ...
- Android Retrofit2 数据解析
在弄数据解析这块,浪费了很长的时间,最开始一直觉得传过来用对象接收的,类型是json,往那个方式去想了.搞了很久. 后来看了别人写的才发觉,真是很简单,感谢 https://www.jianshu.c ...
- WPF System.InvalidCastException: 无法将类型为“System.Windows.Media.Color”的对象强制转换为类型“System.Windows.Media.Brush”。
场景:添加ComboBox样式,界面卡死,日志异常文件如下: -- ::, | ERROR | System.InvalidCastException: 无法将类型为“System.Windows.M ...
- C#使用线程池创建线程
using System; using System.Threading; public class Example { public static void Main() { // Queue th ...
- js 日期格式化函数
直接上代码: // 日期格式化函数 // yyyy/MM/dd hh:mm:ss SSS ⇒ "2017/05/16 09:24:20 850" //"yyyy/M/d ...
- hbase源码系列(四)数据模型-表定义和列族定义的具体含义
hbase是一个KeyValue型的数据库,在<hbase实战>描述它的逻辑模型[行键,列族,列限定符,时间版本],物理模型是基于列族的.但实际情况是啥?还是上点代码吧. HTableDe ...
- lvreduce -L 1000M /dev/vg0/lv0 表示最后缩减至多大,不是减少了多大
resize2fs在前 lvextend 在后 将/dev/vg0/lv0缩减到1000M umount /lv/ 取消挂载 [root@desktop4 ~]# e2fsck -f /dev/vg0 ...
- const_cast的应用
对于const变量,我们不能修改它的值,这是这个限定符最直接的表现.但是我们就是想违背它的限定希望修改其内容怎么办呢?于是我们可以使用const_cast转换符是用来移除变量的const限定符.con ...
- linux 常见错误
yum.pid 已被锁定 rm -rf /var/run/yum.pid
- 创建Maven项目出错
有时候创建maven项目的时候会出错,例如在创建Spring cloud 2 项目的时候,会出现org.apache.maven.archiver.MavenArchiver.getManifest( ...