在codeigniter中组织URI段

在codeigniter中组织URI段,codeigniter,codeigniter-2,Codeigniter,Codeigniter 2,以上是我控制器中的orders方法,因此www.myexample.com/orders 我想知道什么是处理url中传递的信息的正确方法。在我的示例中,您只需将/orders添加到一个特定的视图中,如果添加了一个id,/orders/23,它将转到一个产品页面 现在我想在我的/orders视图中添加分页,并希望在url中传递页码,如/orders/page/2。我是否应该添加一些逻辑来查找“page”的uri 是否有更好的方法来组织所有这些内容?如果您有类似www.myexample.com/o

以上是我控制器中的orders方法,因此www.myexample.com/orders

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

现在我想在我的/orders视图中添加分页,并希望在url中传递页码,如/orders/page/2。我是否应该添加一些逻辑来查找“page”的uri


是否有更好的方法来组织所有这些内容?

如果您有类似www.myexample.com/orders/page/2/4这样的url,您可以阅读以下示例中的参数:

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);
        }



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

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"
    }
}

您可以使用CodeIgniter路由来匹配分页URL,并使其调用使用分页列出订单的函数,而不是调用提供订单特定细节的函数。
domain.com/{controller}/{function}/{parameter 1} ... , {parameter N}