當前位置: 首頁>>代碼示例>>PHP>>正文


PHP CAppUI::splitLocale方法代碼示例

本文整理匯總了PHP中CAppUI::splitLocale方法的典型用法代碼示例。如果您正苦於以下問題:PHP CAppUI::splitLocale方法的具體用法?PHP CAppUI::splitLocale怎麽用?PHP CAppUI::splitLocale使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在CAppUI的用法示例。


在下文中一共展示了CAppUI::splitLocale方法的1個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。

示例1: tr

 /**
  * Localize given statement
  *
  * @param string      $str  Statement to translate
  * @param array|mixed $args Array or any number of sprintf-like arguments
  *
  * @return string translated statement
  */
 static function tr($str, $args = null)
 {
     if (empty($str)) {
         return "";
     }
     $str = trim($str);
     // Defined and not empty
     if (self::$localize) {
         list($_prefix, $_rest) = CAppUI::splitLocale($str);
         $_lang_prefix = self::$lang . $_prefix;
         // Not in self::$locales cache
         if (empty(self::$locales_loaded[$_lang_prefix])) {
             $shared_name = "locales-" . self::$lang . "-" . $_prefix;
             if (SHM::exists($shared_name)) {
                 $_loc = SHM::get($shared_name);
                 if (empty(self::$locales[$_prefix])) {
                     self::$locales[$_prefix] = $_loc;
                 } else {
                     self::$locales[$_prefix] = array_merge(self::$locales[$_prefix], $_loc);
                 }
             }
             self::$locales_loaded[$_lang_prefix] = true;
         }
         // dereferecing makes the systme a lots slower ! :(
         //$by_prefix = array_key_exists($_prefix, self::$locales) ? self::$locales[$_prefix] : null;
         //$by_prefix = self::$locales[$_prefix];
         if (isset(self::$locales[$_prefix][$_rest]) && self::$locales[$_prefix][$_rest] !== "") {
             $str = self::$locales[$_prefix][$_rest];
         } elseif (self::$lang) {
             if (!in_array($str, self::$unlocalized) && !preg_match(self::$localize_ignore, $str)) {
                 self::$unlocalized[] = $str;
             }
             // ... and decorate
             if (self::$locale_mask) {
                 $str = sprintf(self::$locale_mask, $str);
             }
         }
     }
     if ($args !== null) {
         if (!is_array($args)) {
             $args = func_get_args();
             unset($args[0]);
         }
         if ($args) {
             $str = vsprintf($str, $args);
         }
     }
     return nl2br($str);
 }
開發者ID:fbone,項目名稱:mediboard4,代碼行數:57,代碼來源:CAppUI.class.php


注:本文中的CAppUI::splitLocale方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。