>  기사  >  백엔드 개발  >  PHP 8.3의 새 버전이 곧 출시될 예정입니다: 새로운 기능 개요

PHP 8.3의 새 버전이 곧 출시될 예정입니다: 새로운 기능 개요

DDD
DDD원래의
2023-11-10 09:36:301442검색

PHP 8.3이 2023년 11월 23일에 업데이트됩니다. 형식화된 클래스 상수, json 페이로드를 확인하기 위한 json_validate의 새로운 도우미 함수, Randomizer 클래스에 대한 몇 가지 사소한 개선 사항, ini 구성 읽기 등이 추가됩니다.

PHP 8.3의 새 버전이 곧 출시될 예정입니다: 새로운 기능 개요

PHP 팀은 이번 달 말에 새로운 PHP 마이너 버전을 출시할 예정입니다. 새 버전에는 몇 가지를 제외하고는 최종 사용자에게 그다지 적합하지 않은 개선 사항과 기능이 주로 포함됩니다.

형식 클래스 상수

우리 모두는 어떤 시점에서는 상수를 사용합니다. 지금까지 상수의 유형은 해당 값에서 추론되었습니다. 이는 또한 클래스를 상속하거나 구현하는 기능으로 인해 유형이 변경될 수 있음을 의미합니다. 간단히 말해서 새로운 기능은 다음과 같습니다.

class Foo {
   public int BAZ = 1;
}

JSON 페이로드 유효성 검사

JSON을 읽고, 변환하고, 작성해야 하는 거의 모든 상황에서 먼저 유효성을 검사해야 합니다. "테스트 디코드"를 수행하여 예외가 발생했는지 확인하거나 유효하지 않은 페이로드 사례에 대해 else 분기를 설정할 수 있습니다.

더 작은 페이로드의 경우에는 괜찮을 수 있지만, 유효한지 확인하기 위해 매우 큰 JSON 문자열을 배열로 디코딩하는 것은 우아하지 않습니다. 또한 메모리 및/또는 성능 문제가 발생할 수 있습니다.

새로운 json_validate 함수는 주어진 문자열이 유효한 JSON인지 확인하고 성능과 메모리 효율성이 더 높은지 확인합니다. 아래와 같이:

json_validate(string $json, int $depth = 512, int $flags = 0): bool

추가 개선 사항

앞서 말했듯이 곧 출시될 PHP 8.3 버전에는 추가 개선 사항이 있습니다. 나는 개인적으로 그것들이 중요하다고 생각하지 않기 때문에 여기서는 완벽함을 위해 언급하고 싶습니다.

  1. Randomizer 개선: 임의 부동 소수점 값의 범위를 지정하거나 문자열 길이를 정의하는 등 작은 개선이 이루어졌습니다.

  2. 읽기 전용 개정: 읽기 전용 속성이 복제 시 다시 초기화되도록 허용합니다. 이는 극단적인 경우처럼 보이지만 심층 복제에는 중요할 수 있습니다.

  3. #[Override] 속성: 이 속성은 프로그래머의 "의도"를 표현하는 데 사용됩니다. 기본적으로 "이 메서드는 상위 클래스에서 온 것으로 알고 있으며 이를 재정의하고 싶습니다. 이것이 변경되면 알려주세요."

  4. 익명 읽기 전용 클래스: 설명이 다소 필요합니다. 지금까지는 이를 생성할 수 있는 방법이 없었으나 이제 PHP가 이를 도입합니다.

  5. 동적 클래스 상수 획득: PHP에서는 중괄호를 사용하여 동적 클래스 속성을 읽을 수 있습니다. 8.3에서는 상수를 읽는 것도 가능합니다(진지하게 그렇게 하지 마세요).

  6. 특성의 정적 속성: 상위 클래스에서 상속된 정적 속성이 다시 선언됩니다. 개인적으로 이는 PHP로 할 수 있는 모든 것이 혼합된 사악한 조합입니다. 왜? 확인하다.

그리고 더 많은 것. 개인적으로 관련성이 없다고 생각하여 여기에 나열하지 않았습니다. 모든 변경 사항의 전체 목록을 보려면 공식 마이그레이션 가이드를 확인하세요.

결론

모든 새 릴리스와 마찬가지로 업데이트 여부를 따라야 하는 황금률은 없습니다. 이전 버전의 버그와 버그를 수정하는 경우가 많고 더 나은 성능과 기능을 제공하므로 최신 버전을 사용하는 것이 좋습니다.

위 내용은 PHP 8.3의 새 버전이 곧 출시될 예정입니다: 새로운 기능 개요의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.