Computer >> 컴퓨터 >  >> 프로그램 작성 >> PHP

동일한 파일에 여러 네임스페이스를 정의하는 PHP

<시간/>

소개

확장자가 .php인 단일 파일에 둘 이상의 네임스페이스를 정의할 수 있습니다. 목적을 위해 규정된 두 가지 다른 방법이 있습니다. 조합 구문 및 대괄호 구문

조합 구문이 있는 다중 네임스페이스

이 예에서는 두 개의 네임스페이스가 다른 하나 아래에 정의되어 있습니다. 첫 번째 네임스페이스의 리소스는 두 번째 정의가 시작될 때까지 사용할 수 있습니다. 네임스페이스를 현재로 만들고 싶다면 use 키워드로 로드하세요.

예시

<?php
namespace myspace1;
function hello() {
   echo "Hello World from space1\n";
}
echo "myspace1 : ";
hello();
namespace myspace\space2;
function hello(){
   echo "Hello World from space2\n";
}
echo "myspace2 : ";
hello();
use myspace1;
hello();
use myspace2;
hello();
?>

출력

위 코드는 다음 출력을 보여줍니다.

myspace1 : Hello World from space1
myspace2 : Hello World from space2
Hello World from space2
Hello World from space2

대괄호로 묶인 구문이 있는 여러 네임스페이스

다음 예제에서는 중괄호로 표시된 범위를 사용하여 두 개의 네임스페이스를 정의합니다.

예시

<?php
namespace myspace1{
   function hello() {
      echo "Hello World from space1\n";
   }
   echo "myspace1 : ";
   hello();
}
namespace myspace\space2{
function hello(){
   echo "Hello World from space2\n";
}
echo "myspace2 : ";
hello();
}
?>

출력

위 코드는 다음 출력을 보여줍니다.

myspace1 : Hello World from space1
myspace2 : Hello World from space2

여러 네임스페이스에 대한 대괄호 구문은 결합된 구문보다 권장됩니다. 대괄호로 묶인 네임스페이스와 대괄호 없는 네임스페이스를 혼합할 수 없습니다. 여는 선언문을 제외하고는 네임스페이스 대괄호 외부에 다른 PHP 코드가 존재할 수 없습니다. 전역 네임스페이스를 명명된 네임스페이스와 결합해야 하는 경우 대괄호로 묶인 구문만 허용됩니다.