繁体   English   中英

加载视图 - codeigniter出错

[英]Load views - Error with codeigniter

我是codigniter的新手,我正在做一个菜单,所以我把所有的链接都放在同一个主文件中,不再重复。

我的代码是:

在main.php中

    <?=$this->load->view('headers/menu');?>

在menu.php中

    <span><a href="<?=base_url()?>main/agregar">Agregar</a></span> 
    <span><a href="<?=base_url()?>main/modificar">Modificar</a></span> 
    <span><a href="<?=base_url()?>main/eliminar">Eliminar</a></span> 
    <span><a href="<?=base_url()?>main/buscar">Buscar</a></span> 

所以,出现以下错误,我不知道为什么......任何想法??? 非常感谢

遇到PHP错误

严重程度:4096

消息:类CI_Loader的对象无法转换为字符串

文件名:views / main.php

行号:15

回溯:

文件:C:\\ xampp \\ htdocs \\ everisgas \\ application \\ views \\ main.php行:15功能:_error_handler

文件:C:\\ xampp \\ htdocs \\ everisgas \\ application \\ controllers \\ main.php行:9功能:查看

文件:C:\\ xampp \\ htdocs \\ everisgas \\ index.php行:292功能:require_once

这可以是关于框架的版本。 例如在CI 2.6中

    <?php echo $this->load->view('headers/menu');?> 

但在CI 3.0中有效

    <?php $this->load->view('headers/menu');?>

是用法。

如果你想加载视图的内容并打印它,那么你必须告诉CI将视图内容作为字符串返回,方法是将第3个参数作为true传递,如果你没有将第3个参数设置为TRUE,它将返回CI_Loader实例以链接为目的。

<?=$this->load->view('headers/menu', '', TRUE);?>

您可以尝试在主视图中使用如下所示:

<?php $this->load->view('headers/menu'); ?>

这将在主视图文件中加载菜单视图文件。

不要用

<?= 

因为它是一样的

<?php echo

但是$ this-> load-> view返回的不是字符串,所以你只需要使用

<?php $this->load->view('some_template');?> 

没有回音

你为什么回应<?=$this->load->view('headers/menu');?>

而不是在加载主视图之前将其加载到控制器中,或者如果main.phpmenu.php在同一目录中则使用include 'menu.php'

在Codeigniter版本1.5.4(或更低版本)中使用load-> view('headers / menu');?>将加载视图文件,但在Codeigniter 3.0版中,这将不再起作用,而只是使用像这个load-> view( '报头/菜单'); ?>

你可以像这样制作你的编码

<?php $this->load->view('vadmin/menu'); ?>

这可以解决你的问题

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM