我正在尝试学习如何更好地使用Codeigniter框架来满足我的需求。今天我遇到了创建助手的问题。我恳请你支持我,只是为了理解我如何发展它们。
我在applications / helper /下创建了一个checkurl_helper.php。该文件的内容如下:
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
/* Function to check page name for urls*/
function activecheck($page_name) {
$check_current_name = $this->uri->segment(1);
if ($page_name == $check_current_name) {
echo "active";
}
};
// echo active_check('page_name');
我已经在我的控制器中导入了帮助器 - &gt; /application/controllers/Pages.php
<?php
class Pages extends CI_Controller {
function __construct()
{
parent::__construct();
}
public function about() {
$data['title'] = ucfirst("about");
//load custom helper
$this->load->helper('checkurl');
if (!$this->user->loggedin) {
$this->load->view('templates/header_no_login', $data);
} else {
$this->load->view('templates/header', $data);
}
$this->load->view('templates/sidebarmenu_main');
$this->load->view('pages/'.$data['title'].'.php');
$this->load->view('templates/footer');
}
}
现在,在我的模板文件&#34; sidebarmenu_main&#34;我用以下方式调用了助手的功能:
<ul class="sidebar-menu">
<li class="header">FSG MENU</li>
<li class="<?php active_check('about'); ?>"><a href="/about"><i class="fa fa-link"></i> <span>About</span></a></li>
</ul>
所以,如果我在&#34; localhost / about&#34;页面,帮助者应该能够检索到关于&#34;关于&#34;来自网址。因此,通过命令&#34; active_check(&#39; about&#39;),脚本应该输出&#34; active&#34;。我需要&#34;活跃&#34;输出以突出显示菜单框中的语音,向用户说明他正在&#34; about&#34;中导航。页。
我希望我能清楚我要做的事情。
在任何情况下,问题都是在&#34; sidebarmenu_main&#34;中调用该函数。制动所有页面并且不提供任何输出。我已经检查了$ this-&gt; uri-&gt;段(1)是否有效,并且没有问题。
感谢您的支持。
答案 0 :(得分:1)
您的函数名称是
function activecheck($page_name)
你在视图内部打电话
active_check('about');
将_添加到功能