###*路由逻辑*
* * * * *
**如果你有点能力的话推荐直接看源码**
基础概念:
url格式 protocol :// hostname[:port] / path / [;parameters][?query]#fragment
因#fragment无法获取,所以忽略,[;parameters]这个不常用,忽略
1. 去除以下后缀
~~~
'/server.php'
'/index.html', '.html'
'/index.aspx', '.aspx'
'/index.php', '.php'
'/index.asp', '.asp'
'/index.jsp', '.jsp'
'/index.jsf', '.jsf'
~~~
2. url解码
3. 解析Url信息,获得协议,域名,路径,查询各自具体内容
> 路径会解析为一个一维数组
> 查询语句解析为$_GET
> addLanguage,addTheme,addGroup
> get,post,ajax,method等方法
> 实际上是对该数组匹配并处理
~~~
www.example.com/index.php ----> []
www.example.com/index/index ----> ['index','index']
www.example.com/user/login.php?username=root&password=nihao/test
---->
['user','login']
~~~
4. 定义当前url为 协议://域名/
> Route::bulid() 第一次时定义常量__URL__,为该值,之后返回当前值
> 在addLanguage,addTheme,addGroup时可能会为其添加值
5. 定义基础命名空间为app//
6. 根据route.php流程代码运行
- 序言
- 框架
- 框架获取
- 框架安装
- 应用结构
- 框架结构
- 应用目录结构
- 框架流程
- 命名规范
- 核心思想
- 扩展
- 类组装
- 框架基类
- Arr
- Arr扩展函数
- Date基类
- Dir
- Dir基类扩展函数
- Dom基类
- File基类
- Str基类
- Str随机字符
- Str操作函数
- Str随机创建
- Html基类
- Header基类
- Filter基类
- 框架核心
- 路由
- 路由信息
- 路由安装样本
- 路由逻辑原理
- 路由方法匹配
- 路由分组
- 路由构建
- 路由限制
- 路由规则
- 路由多语,多主题
- 路由常量
- 路由扩展
- 路由例
- 路由真静态使用
- 智能加载
- Response基类
- 定时任务
- 框架主类
- 控制器
- model
- model样本
- model使用
- view
- view路径
- view方法
- view配置
- view使用
- view真静态
- view例
- view多主题
- 模版引擎
- 模版引擎之单句解析
- 模版引擎之foreach解析
- cache
- cache注意事项
- cache配置
- cache方法
- cache使用
- cache扩展
- cache处理类File配置
- cache处理类Apc,Apcu配置
- cache处理类memcache,memcached配置
- cookie
- session
- 框架扩展
- Upload类
- 测试
- 测试流程
- 测试文件编写
- 测试文件例-数组篇
- 测试类函数
- 测试类使用
- 测试注意事项
- 常用功能
- 读码须知
- 个人技巧或习惯
- 万能get,call,callStatic
- &&和||
- 变量值交换
- trait拼接
- 多语支持