GVKun编程网logo

【2022/1/13】thinkphp源码无差别阅读(十八)

23

本文将分享【2022/1/13】thinkphp源码无差别阅读的详细内容,并且还将对十八进行详尽解释,此外,我们还将为大家带来关于【2021/12/30】thinkphp源码无差别阅读(八)、【202

本文将分享【2022/1/13】thinkphp源码无差别阅读的详细内容,并且还将对十八进行详尽解释,此外,我们还将为大家带来关于【2021/12/30】thinkphp源码无差别阅读(八)、【2022/01/21】thinkphp源码无差别阅读(二十五)、【2022/01/22】thinkphp源码无差别阅读(二十六)、【2022/01/23】thinkphp源码无差别阅读(二十七)的相关知识,希望对你有所帮助。

本文目录一览:

【2022/1/13】thinkphp源码无差别阅读(十八)

【2022/1/13】thinkphp源码无差别阅读(十八)

thinkPHP源码无差别阅读(十八)

framework阅读

think/route/dispatch/Callback.PHP

  • 执行:exec

think/route/dispatch/Controller.PHP

  • 属性:controller、actionName
  • 初始化:init
  • 执行:exec
  • 使用反射机制注册控制器中间件:registerControllerMiddleware
  • 实例化访问控制器:controller

think/route/dispatch/Url.PHP

  • 构造方法:__construct
  • 解析URL地址:parseUrl
  • 检查url是否已经定义过路由:hasDefineRoute

think/service/ModelService.PHP

  • 启动:boot

think/service/PaginatorService.PHP

  • 注册:register
  • 启动:boot

think/service/ValidateService.PHP

  • 启动:boot

think/session/Store.PHP

  • 属性:data、init、name、id、handler、serialize
  • 构造方法:__construct
  • 设置数据:setData
  • 初始化:init
  • 设置name:setName
  • 获取name:getName
  • 设置id:setId
  • 获取id:getId
  • 获取所有数据:all
  • 设置:set
  • 获取:get
  • 获取并删除:pull
  • 添加:push
  • 判断是否有:has
  • 删除:delete
  • 清空:clear
  • 销毁:destroy
  • 重新生成id:regenerate
  • 保存:save
  • session设置,下次有效:flash
  • 将本次闪存推迟到下次请求:reflash
  • 清空当前请求的session:clearFlashData
  • 序列化数据:serialize
  • 反序列化:unserialize

think/session/driver/Cache.PHP

  • 属性:handler、expire、prefix
  • 构造方法:__construct
  • 读取:read
  • 删除:delete
  • 写入:write

think/session/driver/File.PHP

  • 属性:config
  • 构造方法:__construct
  • 初始化:init
  • gc垃圾回收
  • 查找文件:findFiles
  • 获取文件名称:getFileName
  • 读取:read
  • 写文件(加锁):writeFile
  • 读文件(加锁):readFile
  • 写入:write
  • 删除:delete
  • 删除文件:unlink

计划阅读

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

【2021/12/30】thinkphp源码无差别阅读(八)

【2021/12/30】thinkphp源码无差别阅读(八)

thinkphp源码无差别阅读(八)

framework阅读

console/Command.php

  • 属性:console、name、processTitle、aliases、definition、help、description、ignoreValidationErrors、consoleDefinitionMerged、consoleDefinitionMergedWithArgs、synopsis、usages、input、output、app
  • 构造方法:__construct
  • 忽略验证错误:ignoreValidationErrors
  • 设置控制台:setConsole
  • 获取控制台:getConsole
  • 设置app:setApp
  • 获取app:getApp
  • 是否有效:isEnabled
  • 配置指令:configure
  • 执行指令:execute
  • 用户验证:interact
  • 初始化:initialize
  • 执行指令:run
  • 合并参数定义:mergeConsoleDefinition
  • 设置参数定义:setDefinition
  • 获取参数定义:getDefinition
  • 获取当前指令的参数定义:getNativeDefinition
  • 添加参数:addArgument
  • 添加选项:addOption
  • 设置指令名称:setName
  • 设置进程名称:setProcessTitle
  • 获取指令名称:getName
  • 设置描述:setDescription
  • 获取描述:getDescription
  • 设置帮助信息:setHelp
  • 获取帮助:getHelp
  • 描述信息:getProcessedHelp
  • 设置别名:setAliases
  • 获取别名:getAliases
  • 获取简介:getSynopsis
  • 添加用户:addUsage
  • 获取用户:getUsage
  • 验证指令名称:validateName
  • 输出表格:table

console/Input.php

  • 属性:definition、options、arguments、interactive、tokens、parsed
  • 构造方法:__construct
  • 设置token:setTokens
  • 绑定实例:bind
  • 解析参数:parse
  • 解析短选项:parseShortOption
  • 解析短选项:parseShortOptionSet
  • 解析完整选项:parseLongOption
  • 解析参数:parseArgument
  • 添加短选项:addShortOption
  • 添加完整选项:addLongOption
  • 获取第一个参数:getFirstArgument
  • 判断是否有选项:hasParameterOption
  • 获取选项:getParameterOption
  • 验证输入:validate
  • 检查输入是否是交互的:isInterActive
  • 设置输入交互:setInterActive
  • 获取所有参数:getArguments
  • 获取参数:getArgument
  • 设置参数:setArgument
  • 判断是否有参数:hasArgument
  • 获取所有选项:getOptions
  • 获取选项:getOption
  • 设置选项:setOption
  • 判断是否有选项:hasOption
  • 转义指令:escapeToken
  • 返回传递给命令的参数:__toString

console/Output.php

  • 常量:VERBOSITY_QUIET、VERBOSITY_NORMAL、VERBOSITY_VERBOSE、VERBOSITY_VERY_VERBOSE、VERBOSITY_DEBUG、OUTPUT_NORMAL、OUTPUT_RAW、OUTPUT_PLAIN、
  • 属性:verbosity、handle、styles
  • 构造方法:__construct
  • 未知:ask、askHidden、confirm、choice、askQuestion
  • 输出空行:newLine
  • 输出信息并换行:writeln
  • 输出信息:write
  • 渲染异常:renderException
  • 设置输出信息级别:setVerbosity
  • 获取输出信息级别:getVerbosity
  • 判断是否不输出:isQuiet
  • 判断是否普通输出:isVerBose
  • 判断是否详情输出:isVeryVerbose
  • 判断是否调试:isDebug
  • 未知:describe、__call

计划阅读

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

留言

点击留言

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

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

thinkphp源码无差别阅读(二十五)

ORM阅读

db/CacheItem.php

  • 属性:key、value、expire、tag、isHit
  • 构造方法:__construct
  • 为此缓存项设置键:setKey
  • 获取键:getKey
  • 获取有效期:getExpire
  • 获取tag:getTag
  • 获取缓存值:get
  • 是否命中:isHit
  • 设置值:set
  • 设置tag:tag
  • 设置有效期:expire
  • 设置准确的有效期:expireAt
  • 设置有效期:expireAfter

db/Connection.php

  • 属性:queryStr、numRows、transTimes、error、links、linkID、linkRead、linkWrite、info、queryStartTime、builder、db、readMaster、config、cache
  • 构造方法:__construct
  • 获取builder:getBuilder
  • 创建查询对象:newQuery
  • 指定表名称:table
  • 指定表名称:name
  • 设置db对象:setDb
  • 设置缓存对象:setCache
  • 获取缓存对象:getCache
  • 获取配置:getConfig
  • SQL监控:trigger
  • 缓存数据:cacheData
  • 获取缓存key:getCacheKey
  • 分析缓存:parseCache
  • 获取返回或影响记录数:getNumRows
  • 析构方法:__destruct

db/ConnectionInterface.php

  • 获取Query名称:getQueryClass
  • 指定表名称:table
  • 指定表名称:name
  • 连接数据库:connect
  • 设置db:setDb
  • 设置缓存:setCache
  • 获取配置:getConfig
  • 关闭数据库:close
  • 查找单条记录:find
  • 查找记录:select
  • 插入:insert
  • 插入多条:insertAll
  • 更新:update
  • 删除:delete
  • 获取指定值:value
  • 获取指定列的值:column
  • 执行数据库事务:transaction
  • 启动事务:startTrans
  • 提交事务:commit
  • 事务回滚:rollback
  • 获取最近执行的sql:getLastSql

计划阅读

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

【2022/01/22】thinkphp源码无差别阅读(二十六)

【2022/01/22】thinkphp源码无差别阅读(二十六)

thinkphp源码无差别阅读(二十六)

ORM阅读

db/Fetch.php

  • 属性:query、connection、builder
  • 构造方法:__construct
  • 聚合查询:aggregate
  • 获取某个字段的值:value
  • 获取某列的值:column
  • 插入:insert
  • 获取插入的ID:insertGetId
  • 保存数据:save
  • 插入多条:insertAll
  • 通过select插入:selectInsert
  • 更新:update
  • 删除记录:delete
  • 查询记录:select
  • 查询一条:find
  • 查询多条,不存在就抛出异常:selectOrFail
  • 查询一条,不存在就抛出异常:findOrFail
  • 获取实际的sql:fetch
  • count查询:count
  • sum查询:sum
  • min查询:min
  • max查询:max
  • avg查询:avg
  • 动态查询:__call

db/Mongo.php

  • 属性:connection
  • 执行指令,返回数据集:command
  • 执行指令:cmd
  • 指定distinct查询:getDistinct
  • 获取数据集:listCollections
  • count查询:count
  • 聚合查询:aggregate
  • 多聚合查询:multiAggregate
  • 字段值增长:inc
  • 字段值减少:dec
  • 指定当前的collection:table
  • table别名:collection
  • 设置typeMap:typeMap
  • 未知:awaitData
  • 未知:batchSize
  • 未知:exhaust
  • 设置modifiers:modifiers
  • 设置noCursorTimeout:noCursorTimeout
  • 设置oplogReplay:oplogReplay
  • 设置partial:partial
  • 设置maxTimeMS:maxTimeMS
  • 未知:collation
  • 设置是否replace:replace
  • 设置返回字段:field
  • 指定排除字段:withoutField
  • 设置skip:skip
  • 设置slaveOk:slaveOk
  • 指定查询数量:limit
  • 排序:order
  • 设置tailable:tailable
  • 设置writeConcern:writeConcern
  • 获取主键:getPk
  • 获取getCursor:getCursor
  • 获取查询标识:getQueryGuid
  • 分页:paginate
  • 分批处理数据:chunk
  • 分析表达式:parseOptions
  • 获取字段类型信息:getFieldsType

计划阅读

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

【2022/01/23】thinkphp源码无差别阅读(二十七)

【2022/01/23】thinkphp源码无差别阅读(二十七)

thinkphp源码无差别阅读(二十七)

ORM阅读

db/PDOConnection.php

  • 常量:PARAM_FLOAT
  • 属性:config、PDOStatement、querySt、transTimes、reConnectTimes、fetchType、attrCase、info、queryStartTime、params、bindType、breakMatchStr、bind
  • 获取query类:getQueryClass
  • 获取builder类:getBuilderClass
  • 解析pdo链接的dsn:parseDsn
  • 获取数据表的字段信息:getFields
  • 获取表信息:getTable
  • 对字段进行大小写转换:fieldCache
  • 获取字段类型:getFieldType
  • 获取字段绑定类型:getFieldBindType
  • 获取表信息缓存key:getSchemaCacheKey
  • 获取表信息:getSchemaInfo
  • 获取表信息:getTableInfo
  • 获取字段信息:getTableFieldInfo
  • 获取主键;getPk
  • 获取自增主键:getAutoInc
  • 获取字段信息:getTableFields
  • 获取字段类型:getFieldsType
  • 获取数据表绑定信息:getFieldsBind
  • 连接数据库:connect
  • 试图查询:view
  • 创建pdo实例:createPdo
  • 释放查询结果:free
  • 获取pdo:getPdo
  • 执行查询,使用生成器返回结果:getCursor
  • 执行查询,返回数据集:query
  • 执行语句:execute
  • 执行查询,返回数据集:pdoQuery
  • 执行查询,返回PDOStatement:pdo
  • 获取PDOStatement:getPDOStatement
  • 执行语句:pdoExecute
  • 执行查询:queryPDOStatement
  • 查询单条语句:find
  • 使用游标查询记录:cursor
  • 查询记录:select
  • 插入:insert
  • 插入多条:insertAll
  • 通过select插入:selectInsert
  • 更新:update
  • 删除:delete
  • 查询某个字段的值:value
  • 聚合查询:aggregate
  • 查询一列:column
  • 根据参数绑定组装最后的sql:getRealSql
  • 参数绑定:bindValue
  • 存储过程的参数绑定:bindParam
  • 获取数据集数组:getResult
  • 获取存储过程数据集:procedure
  • 执行数据库事务:transaction
  • 启动事务:startTrans
  • 提交事务:commit
  • 事务回滚:rollback
  • 是否支持事务嵌套:supportSavepoint
  • 生成保存点的sql:parseSavePoint
  • 生成回盾到保存点的sql:parseSavePointRollback
  • 批处理执行sql:batchQuery
  • 关闭数据库:close
  • 是否断线:isBreak
  • 获取最近一次的查询sql:getLastSql
  • 获取最近的插入ID:getLastInsID
  • 获取最近的插入ID:autoInsIDType
  • 获取最近的错误信息:getError
  • 初始化数据库连接:initConnect
  • 连接分布式服务器:multiConnect
  • 执行数据库xa事务:transactionXa
  • 启动sa事务:startTransXa
  • 预编译xa:prepareXa
  • 提交xa:commitXa
  • 回滚xa:rollbackXa

计划阅读

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

关于【2022/1/13】thinkphp源码无差别阅读十八的介绍现已完结,谢谢您的耐心阅读,如果想了解更多关于【2021/12/30】thinkphp源码无差别阅读(八)、【2022/01/21】thinkphp源码无差别阅读(二十五)、【2022/01/22】thinkphp源码无差别阅读(二十六)、【2022/01/23】thinkphp源码无差别阅读(二十七)的相关知识,请在本站寻找。

本文标签: