>  기사  >  백엔드 개발  >  PHP에서 특성을 사용하는 방법

PHP에서 특성을 사용하는 방법

王林
王林앞으로
2021-05-04 15:00:112194검색

PHP에서 특성을 사용하는 방법

1. PHP에는 어떤 특성이 있는지 아시나요?

클래스와 인터페이스 둘 다처럼 보이지만 실제로는 둘 다 아닙니다.

Trait는 하나 이상의 기존 PHP 클래스와 혼합될 수 있는 클래스의 부분 구현으로 간주될 수 있습니다. 여기에는 클래스가 수행할 수 있는 작업을 표시하고 모듈식 구현을 제공하는 두 가지 기능이 있습니다. Trait은 PHP의 단일 상속 제한에 대해 유연한 코드 재사용 메커니즘을 제공하는 코드 재사용 기술입니다.

2. PHP 버전 요구 사항:

PHP5.4에서는 코드 중복을 줄이고 코드 재사용성을 높이는 것이 목적인 특성을 도입하기 시작했습니다.

3. 특성 사용 시나리오:

이런 상황을 상상해 보세요. 여러 클래스에서 메서드를 사용해야 하는 경우 어떻게 처리해야 할까요?

일반적으로 일반적인 접근 방식은 기본 클래스를 작성하고 기본 클래스에 이 메서드를 구현한 다음 모든 클래스가 이 기본 클래스를 상속하는 것입니다.

이것은 대처 방법이지만 최선의 대처 방법은 아닙니다. 상속은 일반적으로 여러 클래스가 매우 유사할 때 사용됩니다. 예를 들어 people은 기본 클래스이고 학생, 근로자 등은 기본 클래스 "people"을 상속하여 확장합니다.

따라서 특성의 역할은 여러 클래스에서 사용될 수 있습니다.

4. 특성 사용 방법:

PHP 매뉴얼의 예를 인용하세요.

예제 1

<?php
trait ezcReflectionReturnInfo {
    function getReturnType() { /*1*/ }
    function getReturnDescription() { /*2*/ }
}

class ezcReflectionMethod extends ReflectionMethod {
    use ezcReflectionReturnInfo;
    /* ... */
}

class ezcReflectionFunction extends ReflectionFunction {
    use ezcReflectionReturnInfo;
    /* ... */
}
?>

1. 먼저 특성을 소개하기 위해 클래스에서 사용을 사용하세요.

아주 간단한가요(수동탈출)? 주목해야 할 것은 특성의 우선순위입니다.

(무료 학습 영상 공유:

php 영상 튜토리얼

) 5. 특성 우선순위

(칠판을 두드리세요) 기본 클래스에서 상속받은 멤버는 특성에 의해 삽입된 멤버로 재정의됩니다. 우선 순위는 현재 클래스의 멤버가 특성의 메서드를 재정의하고 특성이 상속된 메서드를 재정의하는 것입니다.

우선순위: 자체 메서드 > 특성의 메서드 > 상속된 메서드(그렇게 보입니다.)

예제를 보세요

<?php
trait HelloWorld {
    public function sayHello() {
        echo &#39;Hello World!&#39;;
    }
}

class TheWorldIsNotEnough {
    use HelloWorld;
    public function sayHello() {
        echo &#39;Hello Universe!&#39;;
    }
}

$o = new TheWorldIsNotEnough();
$o->sayHello();//输出是 Hello Universe!
?>

또 주목해야 할 점은 여러 특성을 사용한다는 것입니다.

<?php
trait Hello {
    public function sayHello() {
        echo &#39;Hello &#39;;
    }
}

trait World {
    public function sayWorld() {
        echo &#39;World&#39;;
    }
}

class MyHelloWorld {
    use Hello, World;
    public function sayExclamationMark() {
        echo &#39;!&#39;;
    }
}

$o = new MyHelloWorld();
$o->sayHello();
$o->sayWorld();
$o->sayExclamationMark();
?>

요약: Trait은 PHP의 단일 상속 제한을 위해 유연한 코드 재사용 메커니즘을 제공하는 코드 재사용 기술입니다.

관련 권장 사항:

php 튜토리얼

위 내용은 PHP에서 특성을 사용하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 csdn.net에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제