PHP는 웹 개발 또는 동적 웹 애플리케이션을 가능하게 하는 프로그래밍 언어입니다.
몇일 전에 의 첫 번째 알파 버전이 출시되었다는 소식이 발표되었습니다. 프로그래밍 언어의 새로운 분기 PHP 8.3 새로운 json_validate() 함수와 최근 추가된 Randomizer 클래스, 스택 오버플로 감지 등과 같은 계획된 개선 사항이 공개되었습니다.
PHP(PHP 재귀 약어: Hypertext Preprocessor)를 모르는 분들을 위해 웹 개발에 특히 적합한 꽤 인기 있는 오픈 소스 서버측 해석 및 범용 프로그래밍 언어임을 알려드립니다. , HTML에 포함될 수 있기 때문입니다.
PHP 8.3이 도입한 주요 혁신은 무엇입니까?
이 버전의 출시와 함께 Alpha 8.3 테스트용 PHP 1 예를 들어 구현을 위해 계획된 기능 중 문자열이 JSON 형식인지 빠르게 확인하는 json_validate() 함수 이전에는 JSON 문자열이 지정된 데이터 형식으로 구성되어 있었고 JSON 문자열의 유효성 검사가 필요한 경우 함수가 필요했기 때문에 디코딩 작업을 수행하지 않고 json_decode ().
눈에 띄는 또 다른 변경 사항은 개선 사항입니다. 오류 처리 및 스택 오버플로 감지 둘과 함께 새로운 지침 zend.max_allowed_stack_size 및 zend.reserved_stack_size 최대 허용 및 예약 힙 크기를 정의하기 위해 ini 파일에 추가되었습니다. 이 기능의 이점은 스택 오버플로에 의해 유도된 분할 오류가 더 이상 분할 오류를 생성하지 않아 디버깅이 훨씬 쉬워진다는 것입니다.
동작에 관해서는, 스택이 소진에 가까워지면, 스택이 의 값의 차보다 많이 차면, 프로그램이 크래시 되는 일이 언급되어 있습니다. zend.max_allowed_stack_size 및 zend.reserved_stack_size (세그먼테이션 폴트로 상황을 처리하지 않고 실행이 중지됩니다.) 기본적으로 값은 zend.max_allowed_stack_size 0으로 설정됩니다(0: 크기가 자동으로 결정되며 -1을 설정하여 제한을 비활성화할 수 있음).
이 외에도 강조하고 있는 것은Randomizer 클래스에 새로운 메서드가 추가되었습니다., 의사 난수 및 시퀀스를 생성하기 위한 고급 API를 제공합니다. 이 업데이트에서 몇 가지 작은 추가 사항이 통합되었습니다. getBytesFromString 주어진 크기의 문자열 생성 다른 문자열에 있는 임의의 문자를 사용합니다. getFloat 및 nextFloat 임의의 부동 소수점 숫자를 생성하려면 지정된 범위 내에서.
또한 다음을 강조합니다. 날짜/시간 예외 처리 개선, 이전에는 PHP가 날짜와 시간을 처리하는 데 문제가 있을 때 경고나 오류를 표시하는 것으로 제한되었지만 지금은 별도의 예외 생성 추가 DateMalformedIntervalStringException, DateInvalidOperationException, DateRangeError 날짜 및 시간 작업에 문제가 있는 경우.
다른 변경 사항 중 눈에 띄는 :
- 동적 클래스 구문을 사용하여 상수를 추출하는 기능이 추가되었습니다.
- 기능이 추가되었습니다 getBytesFromString() 임의로 선택한 문자열의 바이트에서 원하는 길이의 문자열을 생성하는 데 사용할 수 있습니다.
- 함수에서 직렬화된 데이터를 구문 분석할 때 발생하는 오류 처리 개선 직렬화 해제(). 문제의 경우, 직렬화 해제() 이제 돌아올 것이다 E_경고 대신 E_공지사항.
- 추가되었습니다 getfloat() 사이에 부동 소수점을 반환합니다. $분 y $최대
- 기능이 추가되었습니다 다음 플로트().
- 새로운 POSIX 기능 추가 posix_sysconf(), posix_pathconf(), posix_fpathconf() 및 posix_eaccess().
- FFI를 사용할 때 void 반환 유형이 있는 C 함수는 이제 FFI\CData:void를 반환하는 대신 null을 반환합니다.
posix_getrlimit() 이제 선택적 $res 매개변수를 사용하여 단일 리소스 제한을 가져올 수 있습니다. - gc_상태() XNUMX개의 새로운 필드가 있습니다. 실행 중, 보호됨, 전체 buffer_size.
- 클래스_별칭() 이제 내부 클래스의 별칭 생성을 지원합니다.
- mysqli_poll() 이제 읽기 또는 오류 인수가 전달될 때 ValueError가 발생합니다.
- 배열_패드() 이제 배열이 가질 수 있는 최대 요소 수에 의해서만 제한됩니다. 이전에는 한 번에 최대 1048576개의 항목만 추가할 수 있었습니다.
- 새로운 기능 posix: posix_sysconf(), posix_pathconf(), posix_fpathconf() 및 posix_eaccess()
- 달리기 proc_get_status() 여러 번은 이제 posix 시스템에서 항상 올바른 값을 반환합니다.
최종적으로 그것에 대해 더 많이 알고 싶다면, 당신은 세부 사항을 확인할 수 있습니다 다음 링크에서.
안정적인 PHP 8.3 버전의 출시가 23월 XNUMX일로 예정되어 있다는 점을 언급할 가치가 있습니다.