이 튜토리얼에서는 선언(strict_types=1)이 무엇을 의미하는지, PHP 개발자가 이를 사용해야 하는 이유와 사용하지 말아야 하는 이유를 살펴보고 그 중요성을 보여주는 예를 제공합니다.
이 설정은 PHP의 느슨한 유형 특성과 Java와 같은 다른 인기 언어에서 주도하는 엄격한 유형의 기능에 대한 수요 증가로 인해 발생합니다.
두 가지 타이핑 전략(느슨함 vs 엄격함)에는 장단점이 있습니다. 우선 그 의미를 이해해 봅시다.
동적 유형 언어라고도 알려진 느슨한 유형 언어는 컴파일 타임에 변수가 특정 데이터 유형에 바인딩되지 않는 프로그래밍 언어입니다. 실행 중에 변수에 포함될 데이터 유형을 미리 선언할 필요가 없습니다.
변수의 데이터 유형은 보유한 값에 따라 결정되며 런타임에 변경될 수 있습니다.
PHP는 기본적으로 느슨한 형식의 언어이므로 이를 사용하여 예제를 작성할 수 있습니다.
유형이 느슨한 언어는 암시적 유형 변환을 허용하는 경우가 많습니다. 즉, 작업을 용이하게 하기 위해 데이터를 한 유형에서 다른 유형으로 자동 변환할 수 있다는 의미입니다. 이러한 동작은 유연성을 높여주지만 기능 오류가 발생할 가능성도 높아집니다.
정적 유형 언어라고도 알려진 엄격한 유형 언어는 컴파일 타임에 특정 데이터 유형으로 변수를 명시적으로 선언해야 하는 프로그래밍 언어입니다.
변수의 데이터 유형이 정의되면 수명 동안 변경할 수 없습니다. 엄격한 유형의 언어는 암시적 유형 변환을 수행하지 않습니다. 즉, 서로 다른 유형의 변수 간의 작업은 일반적으로 컴파일 오류를 발생시킵니다.
Java로 예제를 작성할 수 있습니다.
declare(strict_types=1)은 특정 PHP 파일 또는 코드 블록 내에서 함수 및 메서드 인수와 반환 값에 대해 엄격한 유형 검사를 시행하는 PHP의 지시문입니다. 엄격한 유형 검사를 활성화하면 PHP는 함수 인수 및 반환 값의 데이터 유형이 선언된 유형과 정확히 일치하는지 확인합니다. Java와 완전히 동일한 방식입니다.
이 선언을 PHP 파일이나 코드 블록의 시작 부분(다른 코드 앞)에 배치하여 엄격한 입력을 활성화하세요.
엄격한 유형 검사를 활성화하는 기본 구문은 다음과 같습니다.
엄격한 유형 지정을 적용하면 특정 시나리오에서 코드의 안정성이 크게 향상될 수 있습니다.
엄격한 유형 지정은 런타임 오류나 잘못된 동작으로 이어질 수 있는 예기치 않은 유형 관련 문제를 방지하는 데 도움이 됩니다. 이를 통해 항상 기대하는 데이터 유형으로 작업할 수 있습니다.
예를 들어 두 개의 숫자를 더해야 하는 함수를 생각해 보세요.
엄격한 유형이 없으면 PHP는 문자열 '10'을 정수로 강제 변환하여 의도한 것과 다른 결과를 생성할 수 있습니다.
선언(strict_types=1) 사용:
엄격한 유형이 활성화되면 PHP는 TypeError를 발생시키고 함수 실행을 방지하여 유형 안전성을 보장합니다.
원본 기사로 계속 --> https://inspector.dev/why-use-declarestrict_types1-in-php-fast-tips/
위 내용은 PHP에서 선언(strict_types=)을 사용하는 이유 – 빠른 팁의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!