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


PHP Common::getLanguagesList方法代碼示例

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


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

示例1: isValid

 /**
  * Validates the given translations
  *  * There need to be more than 250 translations presen
  *  * Locale, TranslatorName and TranslatorEmail needs to be set in plugin General
  *  * LayoutDirection needs to be ltr or rtl if present
  *  * Locale must be valid (format, language & country)
  *
  * @param array $translations
  *
  * @return boolean
  */
 public function isValid($translations)
 {
     $this->message = null;
     if (250 > count($translations, COUNT_RECURSIVE)) {
         $this->message = self::ERRORSTATE_MINIMUMTRANSLATIONS;
         return false;
     }
     if (empty($translations['General']['Locale'])) {
         $this->message = self::ERRORSTATE_LOCALEREQUIRED;
         return false;
     }
     if (empty($translations['General']['TranslatorName'])) {
         $this->message = self::ERRORSTATE_TRANSLATORINFOREQUIRED;
         return false;
     }
     if (empty($translations['General']['TranslatorEmail'])) {
         $this->message = self::ERRORSTATE_TRANSLATOREMAILREQUIRED;
         return false;
     }
     if (!empty($translations['General']['LayoutDirection']) && !in_array($translations['General']['LayoutDirection'], array('ltr', 'rtl'))) {
         $this->message = self::ERRORSTATE_LAYOUTDIRECTIONINVALID;
         return false;
     }
     $allLanguages = Common::getLanguagesList();
     $allCountries = Common::getCountriesList();
     if (!preg_match('/^([a-z]{2})_([A-Z]{2})\\.UTF-8$/', $translations['General']['Locale'], $matches)) {
         $this->message = self::ERRORSTATE_LOCALEINVALID;
         return false;
     } else {
         if (!array_key_exists($matches[1], $allLanguages)) {
             $this->message = self::ERRORSTATE_LOCALEINVALIDLANGUAGE;
             return false;
         } else {
             if (!array_key_exists(strtolower($matches[2]), $allCountries)) {
                 $this->message = self::ERRORSTATE_LOCALEINVALIDCOUNTRY;
                 return false;
             }
         }
     }
     return true;
 }
開發者ID:KiwiJuicer,項目名稱:handball-dachau,代碼行數:52,代碼來源:CoreTranslations.php

示例2: testGetLanguagesList

 /**
  * test format of DataFile/Languages.php
  *
  * @group Plugins
  */
 function testGetLanguagesList()
 {
     $languages = Common::getLanguagesList();
     $this->assertTrue(count($languages) > 0);
     foreach ($languages as $langCode => $langs) {
         $this->assertTrue(strlen($langCode) == 2, "{$langCode} length = 2");
         $this->assertTrue(is_array($langs) && count($langs) >= 1, "{$langCode} array(names) >= 1");
     }
 }
開發者ID:TensorWrenchOSS,項目名稱:piwik,代碼行數:14,代碼來源:LanguagesManagerTest.php

示例3: aggregateByLanguage

 protected function aggregateByLanguage()
 {
     $query = $this->getLogAggregator()->queryVisitsByDimension(array("label" => self::LANGUAGE_DIMENSION));
     $languageCodes = array_keys(Common::getLanguagesList());
     $metricsByLanguage = new DataArray();
     while ($row = $query->fetch()) {
         $code = Common::extractLanguageCodeFromBrowserLanguage($row['label'], $languageCodes);
         $metricsByLanguage->sumMetricsVisits($code, $row);
     }
     $report = $metricsByLanguage->asDataTable();
     $this->insertTable(self::LANGUAGE_RECORD_NAME, $report);
 }
開發者ID:carriercomm,項目名稱:piwik,代碼行數:12,代碼來源:Archiver.php

示例4: aggregateByLanguage

 protected function aggregateByLanguage()
 {
     $query = $this->getLogAggregator()->queryVisitsByDimension(array("label" => self::LANGUAGE_DIMENSION));
     $languageCodes = array_keys(Common::getLanguagesList());
     $countryCodes = Common::getCountriesList($includeInternalCodes = true);
     $metricsByLanguage = new DataArray();
     while ($row = $query->fetch()) {
         $langCode = Common::extractLanguageCodeFromBrowserLanguage($row['label'], $languageCodes);
         $countryCode = Common::extractCountryCodeFromBrowserLanguage($row['label'], $countryCodes, $enableLanguageToCountryGuess = true);
         if ($countryCode == 'xx' || $countryCode == $langCode) {
             $metricsByLanguage->sumMetricsVisits($langCode, $row);
         } else {
             $metricsByLanguage->sumMetricsVisits($langCode . '-' . $countryCode, $row);
         }
     }
     $report = $metricsByLanguage->asDataTable();
     $this->insertTable(self::LANGUAGE_RECORD_NAME, $report);
 }
開發者ID:KingNoosh,項目名稱:Teknik,代碼行數:18,代碼來源:Archiver.php


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