欢迎各位兄弟 发布技术文章
这里的技术是共享的
'URL_ROUTER_ON' => true, //开启路由复制代码'URL_ROUTE_RULES'=>array( 'news/:year/:month/:day' => array('News/archive', 'status=1'), 'news/:id' => 'News/read', 'news/read/:id' => '/news/:1', ),复制代码'路由表达式'=>'路由地址和额外参数'复制代码| 表达式 | 示例 |
|---|---|
| 正则表达式 | /^blog\/(\d+)$/ |
| 规则表达式 | blog/:id |
'#^blog\/(\d+)$#'复制代码'/^new\/(\d{4})\/(\d{2})$/' => 'News/achive?year=:1&month=:2',复制代码'my'=>'Member/myinfo', // 静态地址路由 类似于之前版本的简单路由 'blog/:id'=>'Blog/read', // 静态地址和动态地址结合 'new/:year/:month/:day'=>'News/read', // 静态地址和动态地址结合 ':user/:blog_id'=>'Blog/read',// 全动态地址复制代码'blog/:id\d'=>'Blog/read',复制代码'news/:cate^add|edit|delete'=>'News/category'复制代码'new/:cate'=>'News/category'复制代码'new/:cate$'=> 'News/category',复制代码http://serverName/index.php/new/info复制代码http://serverName/index.php/new/info/2 复制代码'new/:cate'=> 'News/category',复制代码| 定义方式 | 定义格式 |
|---|---|
| 方式1:路由到内部地址(字符串) | '[分组/模块/操作]?额外参数1=值1&额外参数2=值2...' |
| 方式2:路由到内部地址(数组)参数采用字符串方式 | array('[分组/模块/操作]','额外参数1=值1&额外参数2=值2...') |
| 方式3:路由到内部地址(数组)参数采用数组方式 | array('[分组/模块/操作]',array('额外参数1'=>'值1','额外参数2'=>'值2'...)) |
| 方式4:路由到外部地址(字符串)301重定向 | '外部地址' |
| 方式5:路由到外部地址(数组)可以指定重定向代码 | array('外部地址','重定向代码') |
'blog/:id'=>'/blog/read/id/:1'复制代码'blog/:id'=>'blog/read/'复制代码'avatar/:id'=>'/member/avatar/id/:1_small'复制代码'blog/:id'=>'http://blog.thinkphp.cn/read/:1'复制代码'blog/:id'=>'blog/read/?status=1&app_id=5', 'blog/:id'=>array('blog/read/?status=1&app_id=5'), 'blog/:id'=>array('blog/read/','status=1&app_id=5'), 'blog/:id'=>array('blog/read/',array('status'=>1,'app_id'=>5)),复制代码class NewsAction extends Action{ public function read(){ $New = M('New'); if(isset($_GET['id'])) { // 根据id查询结果 $data = $New->find($_GET['id']); }elseif(isset($_GET['name'])){ // 根据name查询结果 $data = $New->getByName($_GET['name']); } $this->data = $data; $this->display(); } public function archive(){ $New = M('New'); $year = $_GET['year']; $month = $_GET['month']; $begin_time = strtotime($year . $month . "01"); $end_time = strtotime("+1 month", $begin_time); $map['create_time'] = array(array('gt',$begin_time),array('lt',$end_time)); $map['status'] = 1; $list = $New->where($map)->select(); $this->list = $list; $this->display(); } }复制代码'URL_ROUTE_RULES' => array( //定义路由规则 'new/:id\d' => 'News/read', 'new/:name' => 'News/read', 'new/:year\d/:month\d' => 'News/archive', ),复制代码http://serverName/index.php/new/8复制代码http://serverName/index.php/News/read/id/8复制代码http://serverName/index.php/new/hello复制代码http://serverName/index.php/News/read/name/hello复制代码http://serverName/index.php/new/2012/03复制代码http://serverName/index.php/News/archive/year/2012/month/03复制代码'URL_ROUTE_RULES' => array( //定义路由规则 'new/:year\d/:month\d' => 'News/archive', 'new/:id\d' => 'News/read', 'new/:name' => 'News/read', ),复制代码http://serverName/index.php/new/2012/03复制代码'URL_ROUTE_RULES' => array( //定义路由规则 'new/:id\d$' => 'News/read', 'new/:name$' => 'News/read', 'new/:year\d/:month\d$' => 'News/archive', ),复制代码http://serverName/index.php/new/2012/03/01复制代码'URL_ROUTE_RULES' => array( //定义路由规则 '/^new\/(\d+)$/' => 'News/read?id=:1', '/^new\/(\w+)$/' => 'News/read?name=:1', '/^new\/(\d{4})\/(\d{2})$/' => 'News/achive?year=:1&month=:2', ),复制代码 public function read($id=15){ $Form = M("Form"); $data = $Form->where('id=17')->select(); $this->data = $data; $this->display(); }复制代码复制代码复制代码复制代码复制代码复制代码 <table> <tr> <td>id:</td> <td>{$data.id}</td> </tr> <tr> <td>标题:</td> <td>{$data.title}</td> </tr> <tr> <td>内容:</td> <td>{$data.content}</td> </tr> </table>复制代码复制代码复制代码复制代码复制代码复制代码