소개
네임스페이스의 클래스, 함수 또는 상수는 다음과 같은 방법으로 사용할 수 있습니다.
- 현재 네임스페이스의 클래스 사용
- 현재 네임스페이스를 기준으로 네임스페이스 지정
- 정규화된 네임스페이스 이름 지정
현재 네임스페이스에서
이 예에서 네임스페이스는 test1.php에서 로드됩니다. 네임스페이스 없이 참조되는 함수 또는 클래스 이름은 현재 네임스페이스에 있는 항목에 액세스합니다.
예시
#test1.php <?php namespace myspace\space1; const MAX = 100; function hello() {echo "hello in space1\n";} class myclass{ static function hellomethod() {echo "hello in space1\n";} } ?>
다음 코드에서 이 파일을 사용하세요.
예시
<?php namespace myspace; include 'test1.php'; const MAX = 200; function hello() {echo "hello in myspace\n";} class myclass{ static function hellomethod() {echo "hello in myspace\n";} } hello(); myclass::hellomethod(); echo MAX; ?>
출력
hello in myspace hello in myspace 200
상대 네임스페이스 사용
다음 예제에서 함수 및 클래스는 상대 네임스페이스
로 액세스됩니다.예시
<?php namespace myspace; include 'test1.php'; const MAX = 200; function hello() {echo "hello in myspace\n";} class myclass{ static function hellomethod() {echo "hello in myspace\n";} } space1\hello(); space1\myclass::hellomethod(); echo space1\MAX; ?>
출력
위의 코드는 다음 출력을 보여줍니다.
hello in space1 hello in space1 100
정규화된 네임스페이스
함수와 클래스에는 절대 네임스페이스 이름이 지정됩니다.
예시
<?php namespace myspace; include 'test1.php'; const MAX = 200; function hello() {echo "hello in myspace\n";} class myclass{ static function hellomethod() {echo "hello in myspace\n";} } \myspace\hello(); \myspace\space1\hello(); \myspace\myclass::hellomethod(); \myspace\space1\myclass::hellomethod(); echo \myspace\MAX . "\n"; echo \myspace\space1\MAX; ?>
출력
위의 코드는 다음 출력을 보여줍니다.
hello in myspace hello in space1 hello in myspace hello in space1 200 100