首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >codeigniter中的路由控制器

codeigniter中的路由控制器
EN

Stack Overflow用户
提问于 2015-08-31 18:32:51
回答 4查看 156关注 0票数 0

我的routes.php如下:

代码语言:javascript
运行
复制
$controller_list = array('showmenu','aboutus'); // etc you will have        to put all your controllers in this array

foreach($controller_list as $controller_name)
{
     $route[$controller_name] = $controller_name;
     $route[$controller_name.'/(:any)'] = $controller_name.'/$1';
}
$route['([a-zA-z_]+)'] = 'main/index/$1';
//$route['default_controller'] = "home";
$route['404_override'] = '';

我想调用主类中的所有控制器,比如localhost/foldername/ main /about(不同的插件),该怎么做呢?

EN

回答 4

Stack Overflow用户

发布于 2015-08-31 18:45:22

我完全不明白你想说什么,但是你可以在你的routes.php中单独定义每个函数,就像这样简单而精致的url:

代码语言:javascript
运行
复制
$route['whatever you want in your url'] = 'your controller name/your function name';

这将如下所示:

代码语言:javascript
运行
复制
localhost/foldername/(different slugs)
票数 1
EN

Stack Overflow用户

发布于 2015-08-31 19:04:02

代码语言:javascript
运行
复制
      if (!defined('BASEPATH'))
     exit('No direct script access allowed');

    class Main extends CI_Controller {


public function __construct() {
    parent::__construct();
    $this->load->library('form_validation');
     $this->load->database();
    $this->load->model("menu_model");
     $this->load->model("main_model");
}

public function index() {


     $data['category']= $this->menu_model->getCategory('$lang');
    $data['subcategory']= $this->menu_model->getSubCategory('$lang');


    $this->load->view('vwHeader',$data);//Left Menu


}

 public function showmenu()
{
     $menutitle = $this->uri->segment(3);
      $query = $this->db->get_where('category',array('namecategory'=>$menutitle));
      $data['content'] = $this->main_model->show_content($menutitle);

    $data['category']= $this->menu_model->getCategory('$lang');
    $data['subcategory']= $this->menu_model->getSubCategory('$lang');

    $this->load->view('vwMain',$data);//Left Menu
}
 public function menu()
{
    $data['category']= $this->menu_model->getCategory('$lang');
    $data['subcategory']= $this->menu_model->getSubCategory('$lang');

    $this->load->view('vwHeader',$data);//Left Menu
}



       public function aboutus() {

       $arr['page'] ='about';
         $data['category']= $this->menu_model->getCategory('$lang');
    $data['subcategory']= $this->menu_model->getSubCategory('$lang');


    $this->load->view('vwHeader',$data);//Left Menu
    $this->load->view('vwAboutus',$arr);
}

         public function contactus() {

       $arr['page'] ='contactus';
         $data['category']= $this->menu_model->getCategory('$lang');
    $data['subcategory']= $this->menu_model->getSubCategory('$lang');


    $this->load->view('vwHeader',$data);//Left Menu
    $this->load->view('vwContactus',$arr);
}


 }

这是控制器main.php

票数 0
EN

Stack Overflow用户

发布于 2015-08-31 19:11:50

先试一下,你必须先设置你的默认控制器

代码语言:javascript
运行
复制
$default_controller = "main";
$route['default_controller'] = $default_controller;

然后你必须定义你的方法

代码语言:javascript
运行
复制
$route['same url'] = 'aboutus';
$route['same url'] = 'showmenu';
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32309239

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档