【问题标题】:codeigniter uri segment merging?codeigniter uri段合并?
【发布时间】:2015-04-14 04:13:04
【问题描述】:

我有点困惑。以下是我的导航控制器。我一直以这种方式获得我的页面布局。

导航

    <a href ="<?php echo base_url();?>main/index/home_v">Home</a>
    <a href ="<?php echo base_url();?>main/index/contact_v">Contact</a>
    <a href ="<?php echo base_url();?>main/index/test_v">Test</a>    

主控制器

public function index()
{ 
    if($this->uri->segment(3))
    {
        $content = $this->uri->segment(3);
    }
    else
    {
        $content = 'home_v';
    }

    $data = ['title'=> 'home', 'main_content' => "$content"];
    $this->load->view('tempelate',$data);
}

因为,我导航中的所有内容都在视图内,这不是问题,但是如果我在视图内有一个文件夹并想将其发送到该控制器怎么办?我在这里清楚地问这个问题吗?因为我自己也很困惑。

我想将另一个 uri->segment 发送到同一个函数中。

<a href ="<?php echo base_url();?>main/index/category_v/category">Cat</a>

category 这里是文件夹名称。所以现在我基本上想要添加到函数中的是。

$folderName = $this->uri->segment(4);

【问题讨论】:

  • 如果您在视图文件夹中有一个文件夹,并且想将$data 传递给该文件夹内的视图,您可以简单地执行$this-&gt;load-&gt;view('foldername/viewname', $data);
  • @ParagTyagi-morpheus- 我的视图名称实际上是变量 $content。现在我必须添加一个文件夹内的视图名称。
  • 更多代码可能会有所帮助。
  • 我添加了更多内容。 @ParagTyagi-morpheus-
  • 好像文件夹名是category,里面的视图名是category_v.php。我走对了吗??

标签: php codeigniter


【解决方案1】:

没有从这个问题中理解太多。
但是,如果您在视图文件夹中有一个文件夹,并且想将 $data 传递给该文件夹内的视图,您可以简单地这样做,

$this->load->view('foldername/viewname', $data); 

编辑:

public function index()
{ 
    $content = 'home_v';
    if($this->uri->segment(3))
    {
        $content = $this->uri->segment(3);
    }

    $foldername = '';
    if($this->uri->segment(4))
    {
        $foldername = $this->uri->segment(4).'/';
    }

    $data = ['title'=> 'home', 'main_content' => "$content"];
    $this->load->view($foldername.$content, $data);
}

【讨论】:

  • 非常感谢您抽出宝贵时间 :) 这实际上很有帮助。虽然不累,但我对此有所了解。谢谢你:))
猜你喜欢
  • 2013-06-19
  • 2012-06-07
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-06-25
  • 2016-09-07
  • 2011-04-10
相关资源
最近更新 更多