获取语言 OpenCart
Get languages OpenCart
我正在尝试获取 opencart 中的语言。在 PrestaShop 我是这样做的:
public function getLanguages($active = true, $id_shop = false, $ids_only = false)
{
$languages = Language::getLanguages($active, $id_shop, $ids_only);
$langs = "";
foreach ($languages as $language) {
$lang = array();
$lang["lang_id"] = $language['id_lang'];
$lang["name"] = $language['name'];
$langs[] = $lang;
}
return $langs;
}
在 OpenCart 中有类似的方法吗?
谢谢!
请参考Assign Language Variable in OpenCart Or Loading files in the controller
$this->language->load('path/file');
$this->data['foo1'] = $this->language->get('bar1');
$this->data['foo2'] = $this->language->get('bar2');
希望对您有所帮助。
试试这个代码:
$this->language->load('path/file');
$data['first'] = $this->language->get('first');
$data['second'] = $this->language->get('second');
看来您需要所有语言的数据。如果您需要获取已安装的所有语言数据,您可以这样做:
$language_data = array();
$query = $this->db->query("SELECT * FROM " . DB_PREFIX . "language ORDER BY sort_order, name");
foreach ($query->rows as $result) {
$language_data[$result['code']] = array(
'language_id' => $result['language_id'],
'name' => $result['name'],
'code' => $result['code'],
'locale' => $result['locale'],
'image' => $result['image'],
'directory' => $result['directory'],
'sort_order' => $result['sort_order'],
'status' => $result['status']
);
}
当然你可以用return $language_data;
创建函数
很简单:
$this->load->model('localisation/language');
$languages = $this->model_localisation_language->getLanguages();
结果:
Xdebug var dump (image)
我正在尝试获取 opencart 中的语言。在 PrestaShop 我是这样做的:
public function getLanguages($active = true, $id_shop = false, $ids_only = false)
{
$languages = Language::getLanguages($active, $id_shop, $ids_only);
$langs = "";
foreach ($languages as $language) {
$lang = array();
$lang["lang_id"] = $language['id_lang'];
$lang["name"] = $language['name'];
$langs[] = $lang;
}
return $langs;
}
在 OpenCart 中有类似的方法吗?
谢谢!
请参考Assign Language Variable in OpenCart Or Loading files in the controller
$this->language->load('path/file');
$this->data['foo1'] = $this->language->get('bar1');
$this->data['foo2'] = $this->language->get('bar2');
希望对您有所帮助。
试试这个代码:
$this->language->load('path/file');
$data['first'] = $this->language->get('first');
$data['second'] = $this->language->get('second');
看来您需要所有语言的数据。如果您需要获取已安装的所有语言数据,您可以这样做:
$language_data = array();
$query = $this->db->query("SELECT * FROM " . DB_PREFIX . "language ORDER BY sort_order, name");
foreach ($query->rows as $result) {
$language_data[$result['code']] = array(
'language_id' => $result['language_id'],
'name' => $result['name'],
'code' => $result['code'],
'locale' => $result['locale'],
'image' => $result['image'],
'directory' => $result['directory'],
'sort_order' => $result['sort_order'],
'status' => $result['status']
);
}
当然你可以用return $language_data;
很简单:
$this->load->model('localisation/language');
$languages = $this->model_localisation_language->getLanguages();
结果:
Xdebug var dump (image)