thinkphp源碼無差別閱讀(二十二)
ORM閱讀
DbManager.php
- 屬性:instance、config、event清钥、listen、dbLog放闺、queryTimes祟昭、cache、log
- 構(gòu)造方法:__construct
- 注入模型對象:modelMaker
- 監(jiān)聽sql:triggerSQL
- 初始化配置參數(shù):setConfig
- 設(shè)置緩存對象:setCache
- 設(shè)置日志對象:setLog
- 記錄sql日志:log
- 獲取查詢?nèi)罩荆篻etDbLog
- 獲取配置參數(shù):getConfig
- 創(chuàng)建或者切換數(shù)據(jù)庫連接查詢:connect
- 創(chuàng)建數(shù)據(jù)庫連接實例:instance
- 獲取連接配置:getConnectionConfig
- 創(chuàng)建連接:createConnection
- 使用表達(dá)式設(shè)置數(shù)據(jù):raw
- 更新查詢次數(shù):updateQueryTimes
- 重置查詢次數(shù):clearQueryTimes
- 獲取查詢次數(shù):getQueryTimes
- 監(jiān)聽sql執(zhí)行:listen
- 獲取監(jiān)聽sql執(zhí)行:getListen
- 注冊事件:event
- 觸發(fā)事件:trigger
- 動態(tài)調(diào)用:__call
Model.php
- 屬性:exists怖侦、force篡悟、replace、suffix匾寝、updateWhere搬葬、connection、name艳悔、key急凰、table、initialized猜年、defaultSoftDelete抡锈、globalScope、lazySave乔外、db床三、invoker、maker袁稽、macro
- 設(shè)置服務(wù)注入:maker
- 設(shè)置方法注入:macro
- 設(shè)置db:setDb
- 設(shè)置容器對象的依賴注入方法:setInvoker
- 調(diào)用反射執(zhí)行模型方法:invoke
- 構(gòu)造方法:__construct
- 獲取模型名稱:getName
- 創(chuàng)建新的模型實例:newInstance
- 設(shè)置更新條件:setUpdateWhere
- 設(shè)置數(shù)據(jù)庫連接:setConnection
- 獲取連接:getConnection
- 設(shè)置后綴:setSuffix
- 獲取后綴:getSuffix
- 獲取db:db
- 初始化模型:initialize
- 初始化處理:init
- 未知:checkData
- 未知:checkResult
- 強(qiáng)制更新:force
- 判斷force:isForce
- 使用replace:replace
- 刷新模型數(shù)據(jù):refresh
- 設(shè)置數(shù)據(jù)是否存在:exists
- 判斷數(shù)據(jù)是否存在:isExists
- 判斷模型是否為空:isEmpty
- 延遲保存當(dāng)前數(shù)據(jù):lazySave
- 保存當(dāng)前數(shù)據(jù)對象:save
- 檢查數(shù)據(jù)是否允許寫入:checkAllowFields
- 保存寫入數(shù)據(jù):saveData
- 新增寫入數(shù)據(jù):insertData
- 獲取當(dāng)前更新條件:updateWhere
- 保存多個數(shù)據(jù)到當(dāng)前數(shù)據(jù)對象:saveAll
- 刪除當(dāng)前記錄:delete
- 寫入數(shù)據(jù):create
- 更新:update
- 刪除:destroy
- 喚醒:__wakeup
- 修改器:__set
- 獲取器:__get
- 檢測是否有:__isset
- 銷毀數(shù)據(jù)對象的值:__unset
- 數(shù)組式訪問
- 設(shè)置不適用全局查詢范圍:withGlobalScope
- 切換后綴進(jìn)行查詢:suffix
- 切換數(shù)據(jù)庫連接進(jìn)行查詢:connect
- 動態(tài)調(diào)用:__call勿璃、__callStatic
- 析構(gòu)方法:__destruct
計劃閱讀
[ ] framework源碼
[ ] orm源碼
[ ] helper源碼