【问题标题】:use Model Methodes in external php file在外部 php 文件中使用模型方法
【发布时间】:2016-10-20 23:34:23
【问题描述】:

我有一个放置在 Opencart 根目录 (2.0.1.1) 中的 php 文件。

我想用 OC 方法添加一种新语言。

根据admin/index.phpmodel || controller/localisation/language.php 我会调整

require_once($root . 'admin/config.php'); 
require_once($root . 'system/startup.php');
// Registry
$registry = new Registry();
// Loader
$loader = new Loader($registry);
$registry->set('load', $loader);
// Config
$config = new Config();
$registry->set('config', $config);
// Database
$db = new DB(DB_DRIVER, DB_HOSTNAME, DB_USERNAME, DB_PASSWORD, DB_DATABASE, DB_PORT);
$registry->set('db', $db);
// Settings
$query = $db->query("SELECT * FROM " . DB_PREFIX . "setting WHERE store_id = '0'");
foreach ($query->rows as $setting) {
if (!$setting['serialized']) {
$config->set($setting['key'], $setting['value']);
} else {
$config->set($setting['key'], json_decode($setting['value'], true));
}
}
//STARTING NOW, $langu instead of $this
$data = array("name"=>"slovak","code"=>"sk","lokal"=>"sk-SK",..);
$langu = new Language();
$langu->load->model('localisation/language');
$langu->model_localisation_language->addLanguage($data);

这不起作用。结果是

注意:使用未定义的常量 DB_PORT - 在 /path/opencart/admin/controller/module/_account22/account22_getLangZipUnzip.php21

注意:未定义的属性: 语言::$加载 /path/opencart/admin/controller/module/_account22/account22_getLangZipUnzip.php 在线 108

致命错误:呼叫成员 在非对象上的函数语言() /path/opencart/admin/controller/module/_account22/account22_getLangZipUnzip.php 上线108

致命错误出现在 $langu->load->model('localisation/language');

【问题讨论】:

    标签: php opencart opencart2.x


    【解决方案1】:

    Language 类有一个加载函数,但您使用它时就像它是 Language 类的属性一样。您似乎正在尝试使用 Controller 类使用的编码样式。

    【讨论】:

    • 感谢提示。你能用一些工作代码更具体吗?谢谢你
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-04-02
    • 2014-11-02
    • 2012-02-23
    • 1970-01-01
    • 1970-01-01
    • 2016-04-30
    相关资源
    最近更新 更多