ThinkPHP 学習メモ (13) マルチテンプレートサポートとマルチ言語サポート
1 つ目はマルチテンプレートサポートです:
tpl に新しい赤いフォルダーと対応するアクション HTML テンプレートを作成する必要があります
conf.php
//複数のテンプレートのサポート
'TMPL_SWITCH_ON'=>true、
'TMPL_DETECT_THEME'=>true,
index.html
多言語サポート:
confg.php
//多语言支持 //是否开启多语言支持 'LANG_SWITCH_ON'=>true, //安照Lang下的文件夹名称来写 'DEFAULT_LANG'=>'zh-cn', //自动侦测语言 'LANG_AUTO_DETECT'=>true,
対応するフォルダー言語パッケージを作成します。すべてのアクションの共通名は common.php で、アクションごとに異なる php ファイルが付けられます (例: user.php
)。
共通コード:
<?php /** * 针对全局的模块定义的中文文件 * 一:模板需要修改 * 二:配置文件需要修改 * */ return array( 'welcome'=>'welcome', 'lan'=>'english', 'usernamenull'=>'username is null', ); ?>
デザイン言語の方法 2: アクションで設定、L 関数を使用
//快捷设置语言 // L('demo','多语言测试');
欢迎:<!--{$Think.lang.welcome}--> <br> 语言:<!--{$Think.lang.lan}--><br> demo:<!--{$Think.lang.demo}--><br> <a href='?l=zh-cn'>简体中文</a><br> <a href='?l=en-us'>english</a><br>
たとえば、モデルにプロンプト検証情報を設定します
protected $_validate=array( //在模型中添加国际化 array('username','require','<!--{%welcom}-->',0,0,1), array('username','checklen','用户名长度不合法',0,'callback',3), array('password','require','用户名必填',0,0,1), array('repassword','require','用户名必填',0,0,1), array('password','repassword','密码不一致',0,'confirm',1), // array('createip','email','邮箱格式不对',0,'regex',1), );