이러한 상황에서 사용자는 시스템의 기본 로케일을 고려하여 DateTime 객체의 형식을 지정하려고 합니다. 현재 사용자는 format() 메소드를 사용하지만 원하는 언어 번역을 따르지 않습니다.
적절한 로케일 설정을 검색하기 위해 Locale::getDefault() 함수를 통합하려고 시도했습니다. 그러나 DateTime::format에 이 설정을 사용하도록 지시하는 방법을 찾지 못했습니다.
권장되는 해결 방법은 날짜 형식을 지정하기 위해 Intl 확장자를 사용하는 것입니다. 이 확장은 본질적으로 선택한 로케일을 준수합니다. 또는 사용자는 IntlDateFormatter::setPattern()을 사용하여 이 동작을 재정의할 수 있습니다.
다음은 원하는 출력 형식에 대한 사용자 정의 패턴을 보여주는 코드 조각입니다.
$dt = new DateTime; $formatter = new IntlDateFormatter('de_DE', IntlDateFormatter::SHORT, IntlDateFormatter::SHORT); $formatter->setPattern('E d.M.yyyy'); echo $formatter->format($dt);
이 코드는 날짜를 출력합니다. 시스템의 독일어 로케일(de_DE)을 고려하여 원하는 형식으로. 예를 들어 오늘 날짜에 "Di. 4.6.2013"이 표시될 수 있습니다.
위 내용은 시스템의 기본 로케일을 준수하도록 DateTime 개체의 형식을 어떻게 지정합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!