首页
社区
文档
日志
登入
注册
文 档
开始
目录结构
配置文件
常量
视图
控制器
文件上传
自动加载类文件
路由
图片验证码
函数
缓存
数据模型
基本操作
数据添加
数据删除
数据更新
数据查询
where条件
自动验证
数据分页
子查询
原生SQL语句的使用
数据缓存
连接Sqlite
内 文 索 引
## 开启路由 1. 首先要先在配置文件中开启路由功能:'ROUTE_ON'=>true, 2. 在配置文件中定义路由规则的分隔符:'ROUTE_DELIMIT'=>'-', ## 规则定义: **1. 在入口文件中定义路由规则** <?php define('IN',str_replace('\\','/',dirname(__FILE__)) . '/'); define('APP_PATH','home'); define('DEBUG',1); require('../core/core.php'); /*在此位置定义路由规则*/ route(['u'=>['user','index','userid']]); route(['my'=>['index','my','id']]); route(['t'=>['user','info','uid','name','age','sex']]); /*定义路由规则结束*/ \z\z::start(); **2. 单独配置路由规则文件** 需要在 应用目录/common/ 目录下增加 route.php 文件 <?php return [ 'u'=>['user','index','userid'], 'my'=>['index','my','id'], 't'=>['user','info','uid','name','age','sex'] ]; >**规则解释** http://xxx.com/index.php/u-12 将被路由到 http://xxx.com/index.php?c=user&a=index&userid=12 http://xxx.com/index.php/my-2 将被路由到 http://xxx.com/index.php?c=index&a=my&id=2 http://xxx.com/index.php/t-1-2-3-4 将被路由到 http://xxx.com/index.php?c=user&a=info&uid=1&name=2&age=3&sex=4 url解析先按照规则中的键名(u , my , t)匹配 键值数组中的**前两个值**被依次解析为 **控制器名** 和 **操作名** 剩余的值被解析为GET参数名 url中的 -1-2-3-4 将 **按顺序** 对应 GET参数值 ## 生成路由模式的URL >**如果你不使用U()函数生成路由模式的URL那么可以无视本条信息** 当配置为路由模式时,会在缓存目录/route/下生成 pregkey.cache 缓存文件 目的是为了提高路由模式下U()函数的效率 该缓存文件会在修改了路由配置文件时自动重新生成 **如果你是在入口文件定义的路由,那么修改路由之后需要手动删除该缓存文件,以便重新生成** **1. 配置文件 URL_MOD 配置为 2 ** **2. 或者U()函数参入第三个参数值 2 ** 例如:U('控制器名/操作名',[参数数组], 2); >**URL_MOD配置为 3 或者 U()函数第三个参数值是 3 将生成伪静态模式的URL** 伪静态模式下,将省略 index.php 文件名,如果是其它文件名则省略 .php 后缀 配置伪静态时需注意,可参考以下Nginx下的配置 location ~* ^/(?!files|res|admin|tmp|public|\.|.+\.(ico|txt)){ #上面意思是除了开头是files|res|admin|tmp|public|.或者后缀是ico|txt的 rewrite ^/(.+)$ /index.php/$1 last; #全部重写到 /index.php/... }