>백엔드 개발 >PHP 튜토리얼 >PHP네임스페이스를 사용하는 방법

PHP네임스페이스를 사용하는 방법

php中世界最好的语言
php中世界最好的语言원래의
2018-03-24 11:44:511856검색

이번에는 PHPnamespace 사용법과 PHPnamespace 사용 시 주의사항에 대해 알려드리겠습니다. 실제 사례를 살펴보겠습니다.

이 문서의 예에서는 PHP 네임스페이스네임스페이스 정의 및 가져오기 사용 사용법을 설명합니다. 참고할 수 있도록 모든 사람과 공유하세요. 세부 사항은 다음과 같습니다.

PHP에서는 동일한 이름의 함수나 클래스가 허용되지 않습니다. 프로젝트에서 프로그래머가 정의한 클래스 이름이나 함수 이름이 반복적으로 충돌하는 것을 방지하기 위해 PHP5.3에서는 네임스페이스 개념을 도입했습니다.

1. 네임스페이스, 즉 코드를 서로 다른 공간으로 나누는 것입니다. 서로 독립적이며 충돌하지 않습니다.

php 파일에는 여러 개의 네임스페이스가 존재할 수 있으며 첫 번째 네임스페이스 앞에는 코드가 있을 수 없습니다. 콘텐츠 공간 선언 뒤의 코드는 이 네임스페이스에 속합니다(예:

<?php
echo 111;  //由于namespace前有代码而报错
namespace Teacher;
class Person{
  function construct(){
   echo &#39;Please study!&#39;;
  }
}

2). 다른 공간에서 클래스나 메서드를 호출하는 경우 네임스페이스를 지정해야 합니다.

예:

<?php
namespace Teacher;
class Person{
  function construct(){
   echo &#39;Please study!<br/>';
  }
}
function Person(){
  return 'You must stay here!';
};
namespace Student;
class Person{
  function construct(){
   echo 'I want to play!<br/>';
  }
}
new Person();     //本空间(Student空间)
new \Teacher\Person();   //Teacher空间
new \Student\Person();   //Student空间
echo \Teacher\Person();   //Teacher空间下Person函数
출력:

I want to play!
Please study!
I want to play!
You must stay here!

3. 네임스페이스에 도입된 다른 파일은 이 네임스페이스에 속하지 않고 파일 자체에 정의된 공용 공간이나 네임스페이스에 속합니다.

예: 먼저 1.php 및 2.php 파일을 정의합니다:

<?php  //1.php
class Person{
 function construct(){
   echo 'I am one!<br/>';
  }
}
<?php
namespace Newer;
require_once './1.php';
new Person();  //报错,找不到Person;
new \Person();  //输出 I am tow!;
<?php  //2.php
namespace Two
class Person{
 function construct(){
   echo 'I am tow!<br/>';
  }
}
<?php
namespace New;
require_once './2.php';
new Person();  //报错,(当前空间)找不到Person;
new \Person();  //报错,(公共空间)找不到Person;
new \Two\Person(); //输出 I am tow!;

4 사용 방법을 살펴보겠습니다. 이 기사의 사례 당신은 방법을 마스터했습니다. 더 흥미로운 정보를 보려면 PHP 중국어 웹사이트의 다른 관련 기사를 주목하세요!

추천 자료: PHP는 포스터 광고 생성을 직접 구현합니다.

PHP는 WeChat이 열리거나 브라우저가 열릴지 결정합니다.


하나의 SQL 문으로 서로 다른 데이터베이스를 쿼리하는 방법


JS는 드롭다운 상자의 첫 번째 요소에 있는 값을 선택합니다

위 내용은 PHP네임스페이스를 사용하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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