lang/php

PHP7 Scalar 타입 선언

C/H 2018. 7. 25. 10:29

PHP7 Scalar 타입 선언

아래 옵션을 설정한뒤 함수 매개변수에 특정 유형을 적용(강제)할수 있다.

Options

coercive
coercive is default mode and need not to be specified.
strict
strict mode has to explicitly hinted.

Types

  • int
  • float
  • bool
  • string
  • interfaces
  • array
  • callable

Example

<?php
    // 강제 모드, 오류없이 실행된다.
    function sum(int ...$ints) {
       return array_sum($ints);
    }
    print(sum(2, '3', 4.1));
    // 9
<php
    // Strict mode
   declare(strict_types=1);
   function sum(int ...$ints) {
      return array_sum($ints);
   }
   print(sum(2, '3', 4.1));
   // Fatal error: Uncaught TypeError: Argument 2 passed to sum() must be of the type integer, string given, ...
   // 치명적인 오류: 잡을수 없는 유형오류: sum()함수 2번째 인수는 정수타입이어야 한다. 문자열이 주어졌다, ...


반응형