thinkphp源码无差别阅读(六)

framework阅读

Service.php

  • 属性:app
  • 构造方法:__construct
  • 加载路由:loadRoutesFrom
  • 注册路由:registerRoutes
  • 添加指令:commands

Session.php

  • 属性:namespace
  • 设置驱动:createDriver
  • 获取配置:getConfig
  • 未知:resolveConfig
  • 获取默认驱动:getDefaultDriver

Validate.php

  • 属性:type、alias、rule、message、field、typeMsg、currentScene、defaultRegex、filter、scene、error、batch、failException、only、remove、append、regex、db、lang、request、maker
  • 构造方法:__construct
  • 设置服务注入:maker
  • 设置Lang对象:setLang
  • 设置Db对象:setDb
  • 设置Request对象:setRequest
  • 添加验证规则:rule
  • 注册验证规则:extend
  • 设置验证规则的默认提示信息:setTypeMsg
  • 设置提示信息:message
  • 设置验证场景:scene
  • 是否有验证场景:hasScene
  • 设置批量验证:batch
  • 设置验证失败抛出异常:failException
  • 指定需要验证的字段:only
  • 移除验证规则:remove
  • 追加验证规则:append
  • 检验数据:check
  • 根据验证规则验证数据:checkRule
  • 验证单个字段规则:checkItem
  • 获取当前验证类型及规则:getValidateType
  • 是否一致规则:confirm
  • 是否不同规则:diffrent
  • 大于等于规则:egt
  • 大于规则:gt
  • 小于等于规则:elt
  • 小于规则:lt
  • 相等规则:eq
  • 必须规则:must
  • 有效格式:is
  • 获取图片类型:getImageType
  • 验证表单令牌:token
  • 验证域名和ip:activeUrl
  • 验证ip:ip
  • 验证文件后缀:checkExt
  • 验证文件大小:checkSize
  • 验证文件类型:checkMime
  • 验证文件后缀:fileExt
  • 验证文件类型:fileMime
  • 验证文件大小:fileSize
  • 验证图片宽高以及类型:image
  • 验证时间和日期格式:dateFormat
  • 验证唯一性:unique
  • 使用filter_var验证:filter
  • 验证等于某个值:requireIf
  • 使用回调验证:requireCallback
  • 验证某个字段有值的时候,必须:requireWith
  • 验证某个字段没有值的时候,必须:requireWithout
  • 验证在范围之内:in
  • 验证不在范围之内:notIn
  • 验证在之间:between
  • 验证不在之间:notBetween
  • 验证数据长度:length
  • 验证数据最大值:max
  • 验证数据最小值:min
  • 验证日期在之后:after
  • 验证日期在之前:before
  • 验证日期在之后:afterWith
  • 验证日期在之前:beforeWith
  • 验证有效期:expire
  • 验证允许的ip:allowIp
  • 验证禁止ip:denyIp
  • 使用正则验证:regex
  • 获取错误:getError
  • 获取数据的值:getDataValue
  • 获取验证规则错误提示信息:getRuleMsg
  • 获取验证规则错误提示信息:parseErrorMsg
  • 错误信息数组处理:errorMsgIsArray
  • 获取验证场景:getScene
  • 动态方法,直接调用is方法进行验证:__call

计划阅读

[ ] framework源码
[ ] orm源码
[ ] helper源码

留言

点击留言

【2021/12/28】thinkphp源码无差别阅读(六)相关推荐

  1. 【2021/12/25】 thinkphp源码无差别阅读(三)

    thinkphp源码无差别阅读(三) framework阅读 Http.php 属性:app.name.path.routePath.isBild 构造方法:__construct 设置应用名称:na ...

  2. 【2021/12/29】thinkphp源码无差别阅读(七)

    thinkphp源码无差别阅读(七) framework阅读 View.php 属性:namespace.data.filter. 获取模板引擎:engine 模板变量赋值:assign 试图过滤:f ...

  3. 【2021/12/24】 thinkphp源码无差别阅读(二)

    thinkphp源码无差别阅读(二) framework阅读 Cookie.php 属性:config.cookie.request. 构造方法:__construct 自定义实例化:__make 获 ...

  4. 【2022/1/14】thinkphp源码无差别阅读(十九)

    thinkphp源码无差别阅读(十九) framework阅读 think/validate/ValidateRule.php 属性:title.rule.message 添加验证因子:addItem ...

  5. thinkphp源码无差别阅读(一)

    thinkphp源码无差别阅读(一) thinkphp的framework源码大概165个文件,我们不按照逻辑分析阅读源码,我们一个文件一个文件阅读,阅读完以后有个大概了解,然后在运行逻辑下进行阅读 ...

  6. 【2022/1/11】thinkphp源码无差别阅读(十七)

    thinkphp源码无差别阅读(十七) framework阅读 think/route/RuleGroup.php 属性:rules.rule.miss.fullName.alias 构造方法:__c ...

  7. 【2022/01/21】thinkphp源码无差别阅读(二十五)

    thinkphp源码无差别阅读(二十五) ORM阅读 db/CacheItem.php 属性:key.value.expire.tag.isHit 构造方法:__construct 为此缓存项设置键: ...

  8. 【2022/01/27】thinkphp源码无差别阅读(三十)

    thinkphp源码无差别阅读(三十) ORM阅读 model/concern/Attribute.php 属性:pk.schema.field.type.disuse.readonly.data.o ...

  9. 【2022/1/16】thinkphp源码无差别阅读(二十一)

    thinkphp源码无差别阅读(二十一) Helper阅读 contract/Arrayable.php 转换为数组:toArray contract/Jsonable.php 转换为数组:toJso ...

最新文章

  1. Git与SVN区别 \git学习
  2. MVC4做网站六后台管理:6.2网站信息设置
  3. 学习Python最好的途径——激发自己的学习兴趣!
  4. 如何利用python在yi'ge_【GE查找Python面试题】面试问题:使用 TVM … - 看准网
  5. python类的成员函数_注入一个python类成员函数
  6. 使用RestTemplate时报错java.lang.IllegalStateException: No instances available for 127.0.0.1
  7. oracle的连接函数,Oracle各种连接函数总结
  8. 什么是cname a记录
  9. Android(java)学习笔记171:服务(service)之绑定服务调用服务里面的方法
  10. MYSQL DELETE 别名
  11. 小胖IT大讲堂之一 .NET Reflector工具介绍
  12. Python 脚本编写
  13. 目标检测M2Det论文总结
  14. 漫谈基础工业软件开发
  15. VsCode使用笔记【2】Ubuntu+.deb文件安装VScode
  16. 11月 | Gauss松鼠会活动回顾总结
  17. **matlab subs函数**
  18. oracle查询语句 switch,ORACLE SQL语句中的“SWITCH语句”函数DECODE
  19. 和诸君学习做一个黑客 内网ARP欺骗[上]外接网卡的安装和启动(3)
  20. 终于有人把 “单点“ 登录说清楚了!

热门文章

  1. 四种访问修饰符---(Java版)
  2. 驾校预约课程管理系统设计与实现
  3. 同轴式二级圆柱齿轮减速器的设计(论文+DWG图纸) 装配图 低速轴 高速轴 中间轴 斜齿轮 轴承盖
  4. STC15W1048脚单片机,开漏和推挽输出比较(点亮LED)
  5. base64 string 放不下_用 Base64 编码插入 Markdown 图片
  6. 【五校联考2day2】WYF的盒子
  7. 没有数学基础可以学编程吗?
  8. 环保设施用电监管云平台、蓝天碧水保卫战解决方案
  9. 做Java程序员真的没有春天吗?终局之战
  10. 诺基亚塞班系统S60第三版FP2实用软件