Php Codeigniter-静态页面教程;行不通

Php Codeigniter-静态页面教程;行不通,php,codeigniter,static,routes,Php,Codeigniter,Static,Routes,我有以下文件: routes.php $route['default_controller'] = "first"; $route['404_override'] = ''; $route['page/(:any)'] = 'page/view/$1'; page.php <?php if ( ! defined('BASEPATH')) exit('No direct script access allowed'); class Page extends CI_Controlle

我有以下文件:

routes.php

$route['default_controller'] = "first";
$route['404_override'] = '';
$route['page/(:any)'] = 'page/view/$1';  
page.php

<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');

class Page extends CI_Controller {

    public function index() {       
        $this->load->view('first');
    }

    public function view($page = 'first') {

        if ( ! file_exists('application/views/pages/'.$page.'.php'))
            // Whoops, we don't have a page for that!
            show_404()
        }
        $this->load->view('pages/'.$page);
    }
}
?>  

在传递route.php文件中的任何内容时,需要检查页面控制器的$page-in-view方法

$route['page/(:any)'] = 'page/view/$1';
www.xxx.de/page/将向view方法传递一个空字符串或变量,您可以像这样检查它

if(!strlen($page)){
  $page = "first";
}
使用uri类获取页面的更好方法

public function view() {
        $page = $this->uri->segment(2, 'first');

        if ( ! file_exists('application/views/pages/'.$page.'.php')){
            // Whoops, we don't have a page for that!
            show_404()
        }
        $this->load->view('pages/'.$page);
    }

如果没有找到段,它将作为默认值首先传递

您有/views/pages/first.php视图吗?尝试添加die('here');只是在查看方法中,看看它是否在那里…创建了它,添加了行,但什么都没有发生。就像它没有加载一样。或者只是在:any语句页(/:any)中移动斜杠。好的,我管理好了。班上少了一个}。对不起,伙计们。该类的结束标记不在那里。但现在我有另一个问题。由于新页面位于第二个文件夹(pages/)中,我如何管理视图中指向资产文件夹(css、js等)的路径?很抱歉。。。我以为它奏效了,但是。。不。我仍然不知道为什么。
public function view() {
        $page = $this->uri->segment(2, 'first');

        if ( ! file_exists('application/views/pages/'.$page.'.php')){
            // Whoops, we don't have a page for that!
            show_404()
        }
        $this->load->view('pages/'.$page);
    }