codeigniter url路由重写入标题

发布时间:2016-06-15 17:24 | 人气数:339
用codeigniter 做一个简单的小说管理系统,为了seo的要求.我想实现 www.xxxx.com/小说书名 这样的url。

我现在真实的url是这样的: http://xxxx.com/chapter/90 ,chapter是控制器方法.90是小说的id。

怎样把这种url 转成 http://xxxx.com/书名 的url .在数据库表里有这个存储书名的字段。

用下面的url:http://xxxx.com/book/bookname 否则的话有很多干扰的url,例如http://xxxx.com/index

在路由中配置

// 如果是 http://xxxx.com/bookname
$route['([^/]+)'] = "book_controller/bookname/$1";
// 如果是 http://xxxx.com/book/bookname
$route['book/([^/]+)'] = "book_controller/bookname/$1";

在控制器中

class book_controller extends CI_Controller {
    // 你原来的方法
    public function chapter($id) {
    }
     
    public function bookname($bookname) {
        // 通过bookname 获取下 id,然后还使用以前的逻辑
        $this->chapter(get_id_by_name($bookname));
    }
}

关键词:PHP路由, codeigniter路由