如果你有幾個頁面,你想檢查,我會建議有一個頁面控制器,管理這些頁面。事情是這樣的
class Pages extends CI_Controller {
public function view($page_name)
{
$this->load->Pages_model();
if($this->Pages_model->does_exist($page_name))
{
// Does exist. Do things.
} else
{
show_404();
}
}
}
在你routes.php
,您將自己的about
和contact
頁面(你可能擁有的任何其他人)的頁面控制器。
$route['about'] = "pages/view/about";
$route['contact'] = "pages/view/contact";
你Pages_model
需要一個簡單的函數來檢查,如果頁面名稱存在於數據庫中。
function does_exist($page_name) {
$this->db->where('name', $page_name); // assuming you have a table with a `name` field
$query = $this->db->get('pages'); // select from the `pages` table
return $query->num_rows() > 0; // returns bool
}
看看[hooks](http://codeigniter.com/user_guide/general/hooks.html)。 –