>我正在尝试在 Codeigniter 中创建多级 URL,并在 route.php 文件中定义了以下路由
$route['users/(:any)/usersnippet/(:any)'] = 'users/usersnippet/$1';
通过这个,我想创建以下URL
https://websiteurl.com/users/john-kendey-115643/usersnippets/Tru564Y
我该如何创建?
通过这个,我想创建以下URL
您不会使用 CI 路由创建 URL,而是将 URL 路由到控制器函数并使参数可用于该函数。
您的示例网址
https://websiteurl.com/users/john-kendey-115643/usersnippets/Tru564Y
实际上是一个错误的概念,因为 "/user/john-kendey-115643/
" 后面的所有内容都被认为是一个参数。查看 CI 网址
我会用一个更干净、更友好的 URL 来解决您的问题:
网址:
https://websiteurl.com/users/john-kendey-115643/Tru564Y
路线:
$route['users/(:any)/(:any)'] = 'users/process_users/$1/$2';
控制器
class Users extends CI_Controller {
function __construct()
{
parent::__construct();
// load your models
$this->load->model('Get_user');
$this->load->model('Get_user_snippet');
}
function process_users ($user, $snippet){
// get userdata
$data['user']=$this->Get_user->get_the_userdata ($user);
$data['snippet']=$this->Get_user_snippet->get_the_snippetdata ($snippet);
// do something with $data
}
}
型号(Get_user、Get_user_snippet(:
// Query the database for the data you need