이 기사에서는 PHP의 네임스페이스에 대해 알아볼 것입니다. PHP에서 대규모 응용 프로그램을 만들거나 타사 응용 프로그램/라이브러리를 통합할 때 클래스 이름, 함수 이름 간에 충돌이 발생할 수 있습니다. 따라서 이러한 문제를 피하기 위해 PHP "네임스페이스"는 관련 클래스, 인터페이스, 함수 및 상수를 그룹화하는 방법을 제공합니다.
아래에서 네임스페이스 선언 구문을 살펴보겠습니다.
구문
<?php namespace MyfirstNamspace { function welcome() { echo 'welcome To Namespace'; } } ?>
PHP 세계에서 네임스페이스는 재사용 가능한 코드 구성 요소를 만들 때 라이브러리 및 애플리케이션 작성자가 경험하는 두 가지 문제를 처리하기 위한 것입니다.
- 1. 생성한 코드와 내부 PHP 클래스/함수/상수 또는 타사 클래스/함수/상수 간의 이름 영향
- 2.소스 코드의 가독성을 향상시키기 위해 Extra_Long_Names를 축약하는 기능.
참고:
네임스페이스는 응용 프로그램의 파일 주소를 나타내도록 설계되었습니다. 때때로 주소를 줄여야 할 수도 있습니다. 이 경우 해당 주소에 대한 별칭으로 "USE" 키워드를 사용할 수 있습니다. 예를 들어 이해합시다.
<?php namespace SMTP; class Mail{} namespace Mailgun; class Mail{} use SMTP\Mail as SMTPMail; use Mailgun\Mailas MailgunMail; $smtp_mailer = new SMTPMailer; $mailgun_mailer = new MailgunMailer; ?>
설명:
여기에 두 개의 다른 네임스페이스가 있는 Mail과 같은 이름을 가진 두 개의 클래스가 있습니다. 두 메일 클래스를 동시에 사용하려면 별칭을 사용할 수 있습니다. 나중에 코드에서 해당 클래스 개체에 액세스하려는 경우 이를 구현할 수도 있습니다.