我已经设置了全新的codeigniter 2x和模块化扩展(https://bitbucket.org/wiredesignz/codeigniter-modular-extensions-hmvc/wiki/Home)
这是我第一次使用HMVC,从MVC迁移到HMVC的决定是让我自己更好地控制我的登录,管理员和成员区域。
我在HMVC中创建了我的第一个控制器,就像这样......
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
class Home extends MX_Controller {
function __construct()
{
parent::__construct();
$this->load->model('Content_model');
}
public function index()
{
$this->load->view('includes/template');
}
}
和类似的观点:
<?php echo doctype(); ?>
<html lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title><?php echo $pagecontent['seo_title']; ?></title>
<meta name="description" content="<?php echo $pagecontent['seo_description']; ?>" />
<meta name="keywords" content="<?php echo $pagecontent['seo_keywords']; ?>" />
<meta name='robots' content='all' />
<link rel="icon" type="image/ico" href="<?php echo base_url("images/favicon.png"); ?>" />
<?php echo link_tag('css/style.css'); ?>
<script type="text/javascript" language="javascipt" src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.0/jquery.min.js"></script>
<script type="text/javascript" language="javascript" src="<?php echo base_url("js/jquery.validate.min.js"); ?>"></script>
<script type="text/javascript" language="javascript" src="<?php echo base_url("js/main.js"); ?>"></script>
</head>
<body>
<?php $this->load->view('includes/notify'); ?>
<div id="topbar">
<?php $this->load->view('includes/topbar'); ?>
当我尝试在浏览器中查看该页面时,出现以下错误:
Fatal error: Call to undefined function doctype() in C:\xampp\htdocs\mintfifty\application\modules\site\views\includes\template.php on line 1
代码在我之前的所有codeigniter(mvc)项目中都有用,但没有(hmvc)为什么它在HMVC中不起作用?我究竟做错了什么?
答案 0 :(得分:1)
此问题不太可能由HMVC引起。 doctype()
函数在html
帮助器中定义,似乎您没有加载它(除非您已自动加载它)。只需在控制器中加载html帮助器,它就可以正常工作。
public function index()
{
$this->load->helper('html');
$this->load->view('includes/template');
}