>  기사  >  백엔드 개발  >  PHP 인터페이스는 무엇으로 구성되어 있나요?

PHP 인터페이스는 무엇으로 구성되어 있나요?

(*-*)浩
(*-*)浩원래의
2019-10-21 10:50:482779검색

주로 클래스 이름, 클래스가 소유한 메서드, 전달된 매개변수를 제한하고 규제합니다. 이는 약간 PHP 추상 추상 클래스와 같은 느낌입니다.

PHP 인터페이스는 무엇으로 구성되어 있나요?

1. 인터페이스 정의 및 호출 (권장 학습: PHP 비디오 튜토리얼)

<?php
interface face1
{
const param = &#39;test&#39;;
public function show();
}
class test implements face1
{
public function show()
{
echo "interface is run<br>";
}
}
$face = new test();
echo $face->show();         //inerface is run
echo face1::param;           //test
?>

참고: 위의 예에서 인터페이스의 메소드 이름은 show입니다. 인터페이스를 상속받은 클래스에 포함된 show 메소드가 있고, 그렇지 않으면 오류가 보고됩니다. 즉, 인터페이스의 메소드는 가짜이고 실제로 작동하는 것은 상속된 클래스의 메소드이기 때문에 인터페이스가 PHP의 추상 클래스와 다소 유사하다고 생각합니다.

두 번째, 매개변수 제약 조건이 상대적으로 엄격합니다.

<?php
interface face1
{
public function show(show $show);
}
// 显示正常
class test implements face1
{
public function show(show $show)
{
echo "asdfasdf";
}
}
// 报fatal错误
class test2 implements face1
{
public function show(aaa $aaa)
{
}
}
?>

설명: 위의 예는 치명적인 오류를 보고합니다. 왜 치명적인 오류를 보고합니까? 그 이유는 전달된 매개변수가 $show를 표시하지 않고 aaa $aaa이기 때문입니다. 상속하는 인터페이스 클래스에서 인터페이스의 메서드를 호출할 때 전달된 매개 변수는 인터페이스의 매개 변수 이름과 일치해야 합니다. 그렇지 않으면 오류가 보고됩니다.

위 내용은 PHP 인터페이스는 무엇으로 구성되어 있나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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