더보기
2022 년도 4월에 작성된 글 입니다.
PHP 7.0 의 변경 사항
- 성능 향상 - PHP 5.6 보다 두배 이상 빠른 속도
- 메모리 사용률이 현저히 감소
- 추상 구문 트리(Abstract Syntax Tree)
- 일관된 64비트 지원(Consistent 64-bit support)
- 향상된 예외 상속(Improved Exception hierarchy)
- 많은 치명적 에러들이 예외로 전환 됨
- 보안 난수 발생기(Secure random number generator)
- 오래 됐거나 지원하지 않는 SAPI와 확장 지원 중단
- Null 병법 연산자(The null coalescing operator (??))
- 리턴 값, 스칼라 타입 정의
- 익명 클래스(Anonymous Classes)
- Zero cost asserts
PHP 7은 PHP5.6 과 오류를 표시하는 방식을 변경되었다.
일반 Error 와 마찬가지고 Exception 은 첫번째 발생한 Error 를 Catch 에서 잡아주고, 매치되는 Error가 없으면 set_exception_handler()에 설정한 Exception Handler 가 호출된다.
기본 예외 처리가 없으면 예외는 치명적인 오류로 변환되고 기존 오류처럼 처리된다.
PHP 5에서는 Error 계층 구조가 Exception 에서 상속되지 않으므로 catch(Exception e) { ... } 을 사용했을때 Exception 에서 Error 가 catch 되지 않는 것을 확인할 수 있다.
그리하여 PHP 5.6 에서는 catch (Error e) { ... } 또는 set_exception_handler() 핸들러가 필요했다.
그렇기에 catch (Error $e) { ... } 코드를 사용하거나 set_exception_handler()로 Handler 설정을 해야했다.
PHP 7.0 이 되면서 대부분의 에러를 Exception 을 throw 하여 사용 가능하다.
'Programming > $_머니 (PHP)' 카테고리의 다른 글
[PHP 기초] - trim 빈 값 확인 (0) | 2024.02.09 |
---|---|
[PHP 기초] - include 와 require 그리고 _once (0) | 2024.02.09 |
[실험 PHP 7.0 5탄] - 향상된 예외 상속(Improved Exception hierarchy) (0) | 2024.02.09 |
[실험 PHP 7.0 4탄] - 일관된 64비트 지원(Consistent 64-bit support) (0) | 2024.02.09 |
[실험 PHP 7.0 3탄] - 추상 구문 트리(Abstract Syntax Tree) (0) | 2024.02.09 |