최신 버전 ThinkORM의 시간 필드 조정에 대해

藏色散人
풀어 주다: 2021-04-19 09:02:17
앞으로
2219명이 탐색했습니다.

다음 튜토리얼 칼럼인 thinkphp에서는 ThinkORM 최신 버전의 시간 필드 조정 내용을 소개하겠습니다. 도움이 필요한 친구들에게 도움이 되길 바랍니다!

최신 버전 ThinkORM의 시간 필드 조정에 대해

최신 버전의 6.0 프레임워크로 업그레이드한 후 많은 사용자가 시간 필드의 원래 값을 얻을 수 없었습니다. 이는 think-orm 라이브러리의 최신 조정 때문입니다.

최신 ThinkORM에서는 필드 유형 및 시간 필드의 자동 처리가 더 이상 getter의 범위에 포함되지 않습니다. 대신 데이터가 검색될 때마다 이를 수행할 필요가 없도록 결과가 쿼리되는 즉시 처리됩니다. 향후 추가 검사 및 처리가 필요합니다. getter가 더 이상 포함되지 않으므로 유형 변환이 설정된 필드 및 자동 시간 처리 필드를 포함하여 이러한 필드의 원래 값을 얻을 수 없습니다.

시간 필드 자동 처리는 시간 필드(사용자 정의 필드 이름을 지원하는 create_time 및 update_time 포함)의 자동 쓰기 및 자동 출력 변환을 구현하기 위해 프레임워크에서 제공하는 기능입니다.

시간 필드의 원래 값을 가져와야 하는 경우 자동 시간 필드 처리 기능을 꺼야 합니다. 즉, autoWriteTimestamp 속성을 false로 설정한 다음 시간 필드 getter를 사용자 정의하여 시간 필드를 처리하고 나면 자동 시간 필드를 끄는 것을 기억하십시오. 시간 필드의 데이터 쓰기는 수동으로 작성해야 합니다.

시간 필드를 자동으로 작성하고 처리하고 싶지만 출력 형식을 자동으로 지정하고 싶지 않은 경우 dateFormat 속성을 false로 설정할 수 있습니다. 데이터베이스 구성 파일에 설정되어 있는 경우 다음과 같이 설정해야 합니다.

// 自动写入时间戳字段
// true为自动识别类型 false关闭
// 字符串则明确指定时间字段类型 支持 int timestamp datetime date
'auto_timestamp'  => true,
 
// 时间字段取出后的默认时间格式
'datetime_format' => false,
로그인 후 복사

think-orm 최신 버전으로 업그레이드하여 위의 문제는 해결되었으나, getOrigin 메소드 대신 getOrigin 메소드를 사용하는 것이 가장 좋다는 점 참고하시기 바랍니다. 원본 데이터를 얻기 위해 getData 메서드를 사용합니다. 정의된 컨테이너 메서드에서 원본 시간 필드 데이터를 읽으려면 $data['create_time' 대신 $this->origin['create_time']을 사용해야 합니다. '] 또는 $this->data['create_time'].

관련 추천: 최신 10개 thinkphp 비디오 튜토리얼

위 내용은 최신 버전 ThinkORM의 시간 필드 조정에 대해의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:thinkphp
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿