>  기사  >  백엔드 개발  >  [PHP 클래스 및 객체] 유형 제약

[PHP 클래스 및 객체] 유형 제약

不言
不言원래의
2018-04-17 10:09:101353검색

이 글의 내용은 [php 클래스 및 객체] 유형 제약에 관한 것입니다. 이제 특정 참조 값이 있습니다. 필요한 친구들이 참조할 수 있습니다.

유형 제약 조건

PHP 5에서는 유형 제약을 사용할 수 있습니다.可以 함수의 매개변수는 다음과 같이 지정할 수 있습니다:

    객체(함수 프로토타입에 지정된 이름)
  • 인터페이스
  • 배열(PHP 5.1)
  • CalLABLE(PHP 5.4)
  • 매개변수의 기본값으로 NULL을 사용하는 경우에도 함수 호출 시 실제 매개변수로 NULL을 사용할 수 있습니다.

클래스나 인터페이스가 유형 제약 조건을 지정하는 경우 모든 하위 클래스나 구현도 마찬가지입니다.

int 또는 string과 같은 스칼라 유형에는 유형 제약 조건을 사용할 수 없습니다. 특성도 허용되지 않습니다.

Example #1 类型约束示例

<?php//如下面的类class MyClass
{    /**
     * 测试函数
     * 第一个参数必须为 OtherClass 类的一个对象
     */
    public function test(OtherClass $otherclass) {
        echo $otherclass->var;
    }    /**
     * 另一个测试函数
     * 第一个参数必须为数组 
     */
    public function test_array(array $input_array) {
        print_r($input_array);
    }
}    /**
     * 第一个参数必须为递归类型
     */
    public function test_interface(Traversable $iterator) {
        echo get_class($iterator);
    }    /**
     * 第一个参数必须为回调类型
     */
    public function test_callable(callable $callback, $data) {
        call_user_func($callback, $data);
    }
}// OtherClass 类定义class OtherClass {    public $var = &#39;Hello World&#39;;
}
?>

관련 추천:

[php 클래스 및 객체] 객체 복사

[php 클래스 및 객체] 매직 메소드

[php 클래스 및 객체] 순회

위 내용은 [PHP 클래스 및 객체] 유형 제약의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.