네임스페이스 – 6.이름지정규칙

이름지정규칙(Name resolution rules) 네임스페이스 지원으로 이름(클래스명, 함수명 등)은 동일하지만 서로 다른 네임스페이스에 소속될 수 있기 때문에 각 이름이 소속된 네임스페이스를 명확히 지정할 필요가 있습니다. 이름을 지정하는 방법으로는 크게 4가지로 나눌…

Continue Reading 네임스페이스 – 6.이름지정규칙

네임스페이스 – 5.네임스페이스 다루기

네임스페이스 다루기 임의의 네임스페이스 내에 있는 모든 심볼(클래스명, 함수명, 변수명, 상수명 등)은 네임스페이스_식별자::심볼과 같은 식으로 다루어집니다. namespaced_idenfitier::symbol; [crayon-6075ef897eb39229966066/] [crayon-6075ef897eb3d706205767/] use 연산자(use operator) use namespaced_name as othername; use 연산자를 사용하면 원래 네임스페이스 이름 대신에…

Continue Reading 네임스페이스 – 5.네임스페이스 다루기

네임스페이스 – 4.내장 네임스페이스

내장 네임스페이스 php v5.3 이전의 네임스페이스 php v5.3 이전에도 내장된 네임스페이스가 존재하고 있었습니다. [crayon-6075ef897eda0096821332/] test() 함수 내에서 동일한 변수이름 $str이 두 번 사용되고 있지만 하나는 지역 네임스페이스에서, 다른 하나는 전역…

Continue Reading 네임스페이스 – 4.내장 네임스페이스

네임스페이스 – 3.네임스페이스의 정의

네임스페이스의 정의 이 문서에서 기술된 모든 소스는 2008년 8월 6일자 php-5.3.0 알파2 개발버전(php5.3-win32-200808062030.zip)으로 테스트하였습니다. 네임스페이스의 정의는 namespace 키워드에 이어 네임스페이스 식별자(identifier)를 지정합니다. namespace identifier; 스크립트 문서 단위로 이루어지는 네임스페이스 C++과 같은 다른…

Continue Reading 네임스페이스 – 3.네임스페이스의 정의

네임스페이스 – 1.네임스페이스란?

네임스페이스란? 많은 사람들이 네임스페이스(namespace; 이름공간) 개념을 이해하는데 어려움을 겪는 것 같습니다. 2008년 8월 1일 php.net에 정식 릴리즈된 5.3.0 알파1 버전부터 네임스페이스를 지원한다기에 네임스페이스를 이곳에서 다시 한 번 정리하게 되었습니다. 프로그램…

Continue Reading 네임스페이스 – 1.네임스페이스란?

Zend 엔진 2.0 설계초안 – 12.이름공간

이름공간(namespace) 이름공간은 현재 동작하는 프로그램에 정의되어 있는 상수명, 변수명, 함수명, 클래스명 등과 같은 이름을 기록하기 위한 공간에 관련된 매카니즘을 총칭하는 것으로 이러한 이름을 기록하기 위한 심볼 테이블을 관리합니다. Zend 엔진…

Continue Reading Zend 엔진 2.0 설계초안 – 12.이름공간

클래스를 사용해야 하나 – 5.이름공간(namespace)

이름공간은 현재 동작하는 프로그램에 정의되어 있는 변수명, 함수명, 클래스명 등과 같은 이름을 기록하기 위한 공간에 관련된 매카니즘을 총칭합니다. PHP에는 아래와 같이 크게 3가지 이름공간이 존재하는 것으로 보입니다. 전역 이름공간 -…

Continue Reading 클래스를 사용해야 하나 – 5.이름공간(namespace)