「DateTime 類別的物件無法轉換為字串」的錯誤解決方案
在包含表示日期的字串值的資料庫表中特定格式時,嘗試將這些值轉換為DateTime 物件以插入到另一個表中時會遇到錯誤「無法將DateTime類別物件轉換為string."
理解問題
PHP 中的 DateTime 類別將日期和時間表示為物件。錯誤的原因是程式碼嘗試將 DateTime 物件 ($newdate) 插入具有 DATE 資料類型的表列,該列需要日期的字串表示形式。
解決方案
要解決此錯誤,必須在插入之前將 DateTime 物件轉換回字串。 DateTime::format 方法允許將 DateTime 物件格式化為特定的字串表示形式。
修改程式碼
$dateFromDB = $info['Film_Release']; $newDate = DateTime::createFromFormat("l dS F Y", $dateFromDB); $newDate = $newDate->format('Y-m-d'); // Format the date to match the DATE data type
透過新增$newDate = $ newDate->format('Y-m-d');行中,DateTime 物件格式化為YYYY-MM-DD 格式的字串,該格式與DATE 資料類型相容。然後這個字串就可以成功插入到表中了。
以上是如何解決 PHP 中的「DateTime 類別物件無法轉換為字串」錯誤?的詳細內容。更多資訊請關注PHP中文網其他相關文章!