PHP 8.3 배포
클래스 상수의 명시적 입력, 읽기 전용 프로퍼티의 딥 클로닝, 무작위성 기능 등 많은 새로운 기능이 추가. 성능 개선, 버그 수정 및 일반적인 정리도 포함.
타입 지정된 클래스 상수: PHP 8.3에서는 클래스 상수에 명시적인 타입을 지정할 수 있음. 이를 통해 상수의 타입을 보다 엄격하게 관리할 수 있게 됨
동적 클래스 상수 가져오기: 이전 버전에서는 상수를 가져오기 위해
constant함수를 사용해야 했지만, PHP 8.3에서는 클래스 상수를 더 간편하게 가져올 수 있게 됨.새로운 #[\Override] 속성: 메소드에 #[\Override] 속성을 추가함으로써, 해당 메소드가 부모 클래스나 구현된 인터페이스에서 오버라이딩 되었는지를 PHP가 확인. 이는 오버라이딩이 의도적인 것임을 명확히 하고 리팩토링을 단순화.
읽기 전용 속성의 깊은 복제: PHP 8.3에서는 읽기 전용 속성을 깊은 복제할 수 있게 됨. 이를 통해 복제된 객체에서 읽기 전용 속성을 수정할 수 있음.
새로운 json_validate() 함수: 이 함수는 문자열이 구문적으로 유효한 JSON인지를 효율적으로 확인할 수 있음.
새로운 Randomizer::getBytesFromString() 메소드: 이 메소드는 특정 바이트만으로 구성된 무작위 문자열을 쉽게 생성할 수 있음. 예를 들어, 임의의 도메인 이름이나 숫자 문자열을 생성하는 데 사용할 수 있음.
새로운 Randomizer::getFloat() 및 Randomizer::nextFloat() 메소드: 이 메소드들은 특정 구간 내에서 편향되지 않은 부동 소수점 수를 생성할 수 있음.
명령줄 린터가 여러 파일을 지원: 이제 명령줄 린터를 사용하여 여러 파일을 한 번에 검사할 수 있음.
새로운 클래스, 인터페이스, 함수: 다양한 새로운 메소드와 함수가 추가. 예를 들어, DOMElement, IntlCalendar, ldap, mbstring, posix, ReflectionMethod, socket, string, stream, ZipArchive 관련 새로운 기능들이 포함.
폐기 예정 및 호환성 중단 사항: 일부 날짜/시간 예외 처리 변경, 배열 인덱스 할당 변경, range() 함수 변경, 트레이트에서 정적 속성 재선언 변경 등이 포함.
자세한 내용은 : https://www.php.net/releases/8.3/en.php
