LangBehavior.php 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. <?php
  2. // +---------------------------------------------------------------------
  3. // | ThinkCMF [ WE CAN DO IT MORE SIMPLE ]
  4. // +---------------------------------------------------------------------
  5. // | Copyright (c) 2013-2018 http://www.thinkcmf.com All rights reserved.
  6. // +---------------------------------------------------------------------
  7. // | Licensed ( http://www.apache.org/licenses/LICENSE-2.0 )
  8. // +---------------------------------------------------------------------
  9. // | Author: Dean <zxxjjforever@163.com>
  10. // +---------------------------------------------------------------------
  11. namespace cmf\behavior;
  12. use think\Lang;
  13. use think\Request;
  14. class LangBehavior {
  15. // 行为扩展的执行入口必须是run
  16. public function run() {
  17. $request = Request::instance();
  18. $langSet = $request->langset();
  19. Lang::load(
  20. [
  21. CMF_PATH.'lang'.DS.$langSet.EXT,
  22. ]
  23. );
  24. // 加载应用公共语言包
  25. $apps = cmf_scan_dir(APP_PATH.'*', GLOB_ONLYDIR);
  26. foreach ($apps as $app) {
  27. Lang::load(
  28. [
  29. APP_PATH.$app.DS.'lang'.DS.$langSet.DS.'common'.EXT,
  30. ]
  31. );
  32. }
  33. /* 加载新增语言包 */
  34. $_lang_new_dir = CMF_ROOT.'data/lang/'.$langSet.DS;
  35. $_apps = cmf_scan_dir($_lang_new_dir.'*');
  36. foreach ($_apps as $_app) {
  37. Lang::load($_lang_new_dir.$_app);
  38. }
  39. Lang::load($_lang_new_dir.$langSet.EXT);
  40. }
  41. }