【问题标题】:CodeIgniter route and pass values to methodCodeIgniter 路由并将值传递给方法
【发布时间】:2012-02-25 23:18:02
【问题描述】:

关于使用路由调用传递三个值的方法,我没有得到一些东西。 我有一个控制器,里面有以下方法

public function view_day($year, $month, $day)
{
    $data['year'] = $year;
    $data['month'] = $month;
    $data['day'] = $day;

    $this->load->view('calendar/view_day', $data);
}

我的视图文件夹中的页面如下

<? 
    echo $this->uri->segment(5).'<p>'; 
    echo $day;
?>

最后,在我的路线文件中,我有下面的行

$route['calendar/date/:num/:num/:num'] = "calendar/view_day/$1/$2/$3";

我应该做的是路由一个类似的网址

http://www.mydomain.com/index.php/calendar/date/2012/06/10

向我的日历控制器传递三个值(2012、06 和 10)到我的 view_day 方法。然后,收集这三个值并将它们传递到我的最后一页,以便在我的演示页面中使用 $day、$month 和 $year。 现在,运行上面的 url 结果是

10(由行返回 -> echo $this->uri->segment(5).'';) $3(由行返回 -> echo $day;)

基本上,我没有得到的是我的演示页面中的变量 $day 没有获得在 url 中传递的任何值,而是返回我在路由语句中写的相同文本 ($3)。

谢谢

【问题讨论】:

    标签: codeigniter


    【解决方案1】:

    你应该像这样定义你的路线

    $route['calendar/date/(:num)/(:num)/(:num)'] = "calendar/view_day/$1/$2/$3";
    

    【讨论】:

      猜你喜欢
      • 2015-04-25
      • 1970-01-01
      • 1970-01-01
      • 2017-08-04
      • 1970-01-01
      • 1970-01-01
      • 2022-01-17
      • 2015-08-16
      • 1970-01-01
      相关资源
      最近更新 更多