집 >데이터 베이스 >MySQL 튜토리얼 >PHP에서 \'DateTime 클래스의 개체를 문자열로 변환할 수 없습니다\' 오류를 해결하는 방법은 무엇입니까?
"DateTime 클래스의 개체를 문자열로 변환할 수 없습니다"에 대한 오류 해결
날짜를 나타내는 문자열 값이 포함된 데이터베이스 테이블에서 특정 형식으로, 다른 테이블에 삽입하기 위해 이러한 값을 DateTime 개체로 변환하려고 하면 "DateTime 클래스의 개체를 다음으로 변환할 수 없습니다"라는 오류가 발생합니다. string."
문제 이해
PHP의 DateTime 클래스는 날짜와 시간을 객체로 나타냅니다. 이 오류는 코드가 날짜의 문자열 표현이 필요한 DATE 데이터 유형의 테이블 열에 DateTime 객체($newdate)를 삽입하려고 시도하기 때문에 발생합니다.
해결책
이 오류를 해결하려면 삽입하기 전에 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('연월일'); 행에서 DateTime 객체는 DATE 데이터 유형과 호환되는 YYYY-MM-DD 형식의 문자열로 형식화됩니다. 그러면 이 문자열을 테이블에 성공적으로 삽입할 수 있습니다.
위 내용은 PHP에서 \'DateTime 클래스의 개체를 문자열로 변환할 수 없습니다\' 오류를 해결하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!