2012-09-01 94 views
1

如何,我可以得到安裝在的Joomla語言經理的語言,因爲我瞭解以下內容:如何從joomla的語言管理器獲取語言?

  • 的getLocal()給本地機器語言我不會安裝在應用程序

  • 語言

    的getName(),getTag()給你的當前語言名稱/標籤

+0

難道你長了這個...? – Basith

回答

2

此代碼返回當前的語言......

$lang =& JFactory::getLanguage(); 
echo 'Current language is: ' . $lang->getName(); 

通過使用下面的查詢就可以得到安裝的Joomla的所有語言。

$db =& JFactory::getDbo(); 
$db->setQuery(
'SELECT sef, title_native' . 
' FROM #__languages' . 
' ORDER BY sef ASC' 
); 
$options = $db->loadObjectList(); 

如果你安裝了它會存儲到#__extensions表使用參數中的Joomla任何語言。所以,你可以得到所有已安裝的語言從下面的查詢......

$db =& JFactory::getDbo(); 
      $query = "SELECT name FROM #__extensions WHERE type='package'"; 
      $db->SetQuery($query); 
      $options = $db->loadObjectList(); 
      echo "<pre>"; print_r($options); 
+0

我不需要只有當前的語言,我需要安裝在Joomla的所有語言! –

+0

見編輯答案。這將幫助您獲得語言... – Basith

+0

,將讓內容語言的語言經理,但我需要得到安裝的語言! –

0

此行返回出版語言

$languages = JLanguageHelper::getLanguages(); 
0

從contentlanguage字段類型的數組:

http://docs.joomla.org/Standard_form_field_types

JLanguage::getKnownLanguages() 

你得到一個列表如下:

Array 
(
    [en-GB] => Array 
     (
      [name] => English (United Kingdom) 
      [tag] => en-GB 
      [rtl] => 0 
      [locale] => en_GB.utf8, en_GB.UTF-8, en_GB, eng_GB, en, english, english-uk, uk, gbr, britain, england, great britain, uk, united kingdom, united-kingdom 
      [firstDay] => 0 
      [weekEnd] => 0,6 
     ) 

    [es-ES] => Array 
     (
      [name] => Spanish (español) 
      [tag] => es-ES 
      [rtl] => 0 
      [locale] => es_ES.utf8, es_ES.UTF-8, es_ES, spanish 
      [weekEnd] => 0,6 
     ) 

)