【2022/1/11】thinkphp源码无差别阅读(十七)
thinkphp源码无差别阅读(十七)
framework阅读
think/route/RuleGroup.php
- 属性:rules、rule、miss、fullName、alias
- 构造方法:__construct
- 设置分组路由规则:setFullName
- 获取所属域名:getDomain
- 获取分组别名:getAlias
- 检测分组路由:check
- 分组url匹配检查:checkUrl
- 设置分组别名:alias
- 延迟解析分组路由规则:lazy
- 解析分组规则及绑定:parseGroupRule
- 检测分组路由:checkMergeRuleRegex
- 获取分组miss路由:getMissRule
- 注册miss路由:miss
- 添加分组下的路由规则:addRule
- 注册分组下的路由规则:addRuleItem
- 设置路由分组前缀:prefix
- 合并路由规则正则:mergeRuleRegex
- 设置分组调度:dispatcher
- 获取完整分组名称:getFullName
- 获取分组路由规则:getRule
- 清空分组路由规则:clear
think/route/RuleItem.php
- 属性:miss、autoOption
- 构造方法:__construct
- 设置miss路由:setMiss
- 判断miss:isMiss
- 设置路由为自动注册为option:setAutoOptions
- 判断是否自动注册option:isAutoOptins
- 获取后缀:getSuffix
- 路由规则预处理:setrule
- 设置别名:name
- 设置路由标识:setRuleName
- 检测路由:checkRule
- 检测路由:check
- url后缀以及slash检查:urlSlashCheck
- 检测url和路由是否匹配:match
- 设置路由所属分组:group
think/route/RuleName.php
- 属性:item、rule、group
- 注册路由标识:setItem
- 注册路由分组标识:setGroup
- 注册路由规则:setRule
- 根据路由规则获取路由对象:getRule
- 获取路由分组:getGroup
- 清空路由规则:clear
- 获取路由列表:getRuleList
- 导入路由标识:import
- 根据路由标识获取路由信息:getName
- 获取路由信息:getRuleItemInfo
think/route/Url.php
- 属性:app、route、vars、url、root、https、suffix、domain
- 构造方法:__construct
- 设置参数:vars
- 设置后缀:suffix
- 设置域名:domain
- 设置url跟地址:root
- 设置https:https
- 检测域名:parseDomain
- 解析后缀:parseSuffix
- 解析地址:parseUrl
- 分析路由规则中的变量:parseVar
- 匹配路由地址:getRuleUrl
- 生成url:build
- 字符串处理:__toString
- debug信息:__debugInfo
计划阅读
[ ] framework源码
[ ] orm源码
[ ] helper源码
【2022/1/11】thinkphp源码无差别阅读(十七)相关推荐
- 【2022/1/14】thinkphp源码无差别阅读(十九)
thinkphp源码无差别阅读(十九) framework阅读 think/validate/ValidateRule.php 属性:title.rule.message 添加验证因子:addItem ...
- 【2022/01/21】thinkphp源码无差别阅读(二十五)
thinkphp源码无差别阅读(二十五) ORM阅读 db/CacheItem.php 属性:key.value.expire.tag.isHit 构造方法:__construct 为此缓存项设置键: ...
- 【2022/01/27】thinkphp源码无差别阅读(三十)
thinkphp源码无差别阅读(三十) ORM阅读 model/concern/Attribute.php 属性:pk.schema.field.type.disuse.readonly.data.o ...
- 【2022/1/16】thinkphp源码无差别阅读(二十一)
thinkphp源码无差别阅读(二十一) Helper阅读 contract/Arrayable.php 转换为数组:toArray contract/Jsonable.php 转换为数组:toJso ...
- 【2021/12/25】 thinkphp源码无差别阅读(三)
thinkphp源码无差别阅读(三) framework阅读 Http.php 属性:app.name.path.routePath.isBild 构造方法:__construct 设置应用名称:na ...
- thinkphp源码无差别阅读(一)
thinkphp源码无差别阅读(一) thinkphp的framework源码大概165个文件,我们不按照逻辑分析阅读源码,我们一个文件一个文件阅读,阅读完以后有个大概了解,然后在运行逻辑下进行阅读 ...
- 【2021/12/29】thinkphp源码无差别阅读(七)
thinkphp源码无差别阅读(七) framework阅读 View.php 属性:namespace.data.filter. 获取模板引擎:engine 模板变量赋值:assign 试图过滤:f ...
- 【2021/12/24】 thinkphp源码无差别阅读(二)
thinkphp源码无差别阅读(二) framework阅读 Cookie.php 属性:config.cookie.request. 构造方法:__construct 自定义实例化:__make 获 ...
- 【2021/12/28】thinkphp源码无差别阅读(六)
thinkphp源码无差别阅读(六) framework阅读 Service.php 属性:app 构造方法:__construct 加载路由:loadRoutesFrom 注册路由:register ...
最新文章
- sublime配置python开发环境_win7 下搭建sublime的python开发环境的配置方法
- 神策营销云:「在线教育」行业,如何借“运营工具”玩转微信生态?
- c# bindingsource mysql,Navicat for MySQL 使用教程:在.NET中如何连接MySQL数据库
- Java客户端操作HBase:插入数据(逐条插入与批量插入)代码示例
- android中TextView分段显示不同颜色,字体,时间
- ABAP并发编程到底能提高多少性能
- Java——容器(泛型)
- dw显示云服务器的数据库,dw如何读取服务器数据库
- python3.7如何使用enum_python3 enum模块
- Jquery操作select选项集合,判断集合中是否存在option
- python管道怎么使用_Python – 如何使用管道执行shell命令?
- 手电筒安卓_王思聪吃热狗数字时钟app安卓android苹果ios
- 鼎信诺显示连接服务器失败,鼎信诺审计软件2013-2014年度常见问题解答.docx
- Python的request官方文档
- proteus常用元器件名称
- bat脚本学习——拖拽文件到bat下载
- MVX-Net: PointFusion 在mmdetection3d中的实现
- 2 | TGA文件格式分析
- 天正的计算机快捷命令大全,天正建筑快捷键命令大全 2
- Cortex-M3和Cortex-M4 Fault异常基础知识