以下由thinkphp教學專欄為大家介紹關於最新版ThinkORM對於時間欄位的調整,希望對需要的朋友有幫助!
不少用戶在升級6.0最新版本框架後出現了獲取不到時間字段原始值的情況,這是因為think-orm庫的一個最新調整導致的。
在最新的ThinkORM中,欄位類型和時間欄位的自動處理不再納入獲取器範疇,而是在查詢到結果後的第一時間就進行了處理,避免以後每次調用資料的時候都要進行一次額外的檢測和處理。而由於不再納入獲取器,所以導致無法取得這些欄位的原始值,包括設定了類型轉換的欄位和自動時間處理欄位。
時間欄位的自動處理是框架提供的實作時間欄位(包括create_time和update_time,支援自訂欄位名稱)的自動寫入和自動輸出轉換功能。
如果你需要取得時間欄位的原始值,那麼需要關閉自動時間欄位處理功能,也就是設定autoWriteTimestamp屬性為false,然後對時間欄位自訂擷取器接手時間欄位的輸出,並且記得一旦關閉自動時間欄位處理,時間欄位的資料寫入必須手動寫入。
如果你希望時間欄位自動寫入處理,但不希望進行自動格式化輸出,可以設定dateFormat屬性為false。如果在資料庫設定檔中設定的話,應該如下設定:
// 自动写入时间戳字段 // true为自动识别类型 false关闭 // 字符串则明确指定时间字段类型 支持 int timestamp datetime date 'auto_timestamp' => true, // 时间字段取出后的默认时间格式 'datetime_format' => false,
think-orm升級到最新版本已經修正上述問題,但注意取得原始資料最好是用getOrigin方法取代getData方法,如果你需要在定義的獲取器方法中讀取原始的時間字段數據,應該用$this->origin['create_time']而不是用$data['create_time']或$this->data['create_time'] 。
#相關推薦:最新的10個thinkphp影片教學
以上是關於最新版ThinkORM對於時間欄位的調整的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本文討論了ThinkPHP的內置測試框架,突出了其關鍵功能(例如單元和集成測試),以及它如何通過早期的錯誤檢測和改進的代碼質量來增強應用程序可靠性。

本文討論了在無服務器體系結構中使用ThinkPHP的關鍵注意事項,專注於性能優化,無狀態設計和安全性。它突出了諸如成本效率和可擴展性之類的收益,但也應對挑戰

本文討論了在ThinkPHP微服務中實施服務發現和負載平衡,重點是設置,最佳實踐,集成方法和推薦工具。[159個字符]

ThinkPHP的IOC容器提供了高級功能,例如懶惰加載,上下文綁定和方法注入PHP App中有效依賴性管理的方法。Character計數:159

ThinkPHP具有輕巧的設計,MVC架構和可擴展性。它通過各種功能提高可擴展性,加快開發並提高安全性。

本文概述了使用ThinkPhp和RabbitMQ構建分佈式任務隊列系統,重點是安裝,配置,任務管理和可擴展性。關鍵問題包括確保高可用性,避免常見的陷阱,例如不當


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

禪工作室 13.0.1
強大的PHP整合開發環境

WebStorm Mac版
好用的JavaScript開發工具

MantisBT
Mantis是一個易於部署的基於Web的缺陷追蹤工具,用於幫助產品缺陷追蹤。它需要PHP、MySQL和一個Web伺服器。請查看我們的演示和託管服務。

SublimeText3 Linux新版
SublimeText3 Linux最新版

記事本++7.3.1
好用且免費的程式碼編輯器