在codeigniter中组织URI段

时间:2012-09-23 19:57:30

标签: codeigniter codeigniter-2

function orders(){

        $order_id = $this->uri->segment(3);

        if($order_id){
            $data['main_content'] = "admin-order-page";
            $data['order_id'] = $order_id;
            $this->load->view("includes/cp-template",$data);
        }else{
            $data['main_content'] = "admin-orders";
            $this->load->view("includes/cp-template",$data);
        }



    }

以上是我的控制器中的订单方法,所以www.myexample.com/orders

我想知道处理网址中传递的信息的正确方法是什么。在我的示例中,您只有/ orders进入特定视图,如果附加了id,/ orders / 23,它将转到产品页面。

我现在想在我的/订单视图中添加分页,并希望在网址中传递页码,例如/ orders / page / 2。我是否应该添加更多逻辑来寻找“页面”的uri?

有没有更好的方法来组织所有这些?

1 个答案:

答案 0 :(得分:0)

如果你有一个像 www.myexample.com/orders/page/2/4 这样的网址,你可以阅读下面的例子:

class Orders extends CI_Controller{

    public function __contruct()
    {
        parent::__contruct();
    }

    public function page($page_number, $limit)
    {
        echo 'page number ' . $page_number . ' with limit of ' . $limit;
            //the above line prints:  "page number 2 with limit of 4"
    }
}

请记住,URI模式是根据以下内容构建的:

domain.com/{controller}/{function}/{parameter 1} ... , {parameter N}