우리가 이전에 include 또는 require 를 이용해서 다른파일안에 있는 코드를 불러왔는데, 이번 내용에서는 네임스페이스에 대해서 알아보고자 합니다.
네임스페이스(namespace)는 파일의 데이터를 보관하는 디렉토리라고 할수가 있습니다. 파일명이 같은경우 불러올때 충돌이 일어날수있는데 이러한 경우를 방지하기 위해서 사용합니다.
네임스페이스 기본문법
예제를 보면 nemespace language\en; 은 디렉토리 경로가 en 이며, function welcome() 함수에 담아서, return ‘hello world’; 리턴하였습니다.
동일하게 namespace language\ko; 는 디렉토리 경로는 ko 에 담았으며 return ‘안녕하세요.’; 으로 리턴하였습니다. 예제는 파일하나에 담은것이지만 en 과 ko 를 각각 다른파일에 담을수도 있습니다.

네임스페이스 호출하기
예제를 보면 require_once ‘greeting_lang.php’; 는 네임스페이스 파일을 require 로 호출하였으며, echo language\ko\welcome(); 는 ko 디렉토리 경로에 함수명 welcome(); 를 입력하여 ko 와 en을 각각 불러올수가 있습니다.

네임스페이스 출력 결과
위에 예제의 결과를 확인하여보면 language\en; 디렉토리 경로에서 리턴한 hello world 가 출력되었으며, language\ko; 디렉토리 경우의 리턴값 안녕하세요가 출력이 되었습니다.

지금까지 php 네임스페이스(namespace)의 기본문법과 사용방법에 대해서 간략하게 살펴보았습니다. 코드를 작성하다보면 똑같은 함수, 클래스를 사용하는 경우 충돌을 해결하기위해서 사용하게 됩니다.