CodeIgniter HMVC object_to_array() error

2022-08-30 14:02:51

HMVC : https://bitbucket.org/wiredesignz/codeigniter-modular-extensions-hmvc/downloads

下载CI并通过HMVC复制后,我收到以下错误:

遇到未捕获的异常

类型:错误

消息:调用未定义的方法 MY_Loader::_ci_object_to_array()

文件名:/Users/k1ut2/Sites/nine.dev/application/third_party/MX/Loader.php

行号:300

回溯:

文件: /Users/k1ut2/Sites/nine.dev/application/controllers/Welcome.php 行: 23 功能: 查看

文件: /Users/k1ut2/Sites/nine.dev/index.php 行: 315 功能: require_once


答案 1

只是在这里添加这个,因为Clasyk提供的链接目前不起作用...

该线程的简短版本归结为此...

在应用程序/third_party/MX/加载器中.php您可以执行以下操作...

在“查找...(300号线)public function view($view, $vars = array(), $return = FALSE)

return $this->_ci_load(array('_ci_view' => $view, '_ci_vars' => $this->_ci_object_to_array($vars), '_ci_return' => $return));

将其替换为

if (method_exists($this, '_ci_object_to_array'))
{
        return $this->_ci_load(array('_ci_view' => $view, '_ci_vars' => $this->_ci_object_to_array($vars), '_ci_return' => $return));
} else {
        return $this->_ci_load(array('_ci_view' => $view, '_ci_vars' => $this->_ci_prepare_view_vars($vars), '_ci_return' => $return));
}

这是CI Devs实现的“小”无记录更改的结果,这很好!

Wiredesignz上有一个拉取请求正在等待操作,所以他知道这件事......

同时,您可以实现上述“diddle”并返回到编码:)


答案 2

我得到了解决方案。这对我有用。在应用程序/third_party/MX/装载机的 300 行.php

此行生成 CI 3.1.3 的错误

return $this->_ci_load(array('_ci_view' => $view, '_ci_vars' => $this->_ci_object_to_array($vars), '_ci_return' => $return));

替换为此行。

return $this->_ci_load(array('_ci_view' => $view, '_ci_vars' => $this->_ci_prepare_view_vars($vars), '_ci_return' => $return));
}

推荐