PHP/PHP의 기본

파일 불러오기(include) 그리고 namespace

김월천 2021. 9. 17. 00:14

우리는 프로그램의 유지보수를 위해 할 수 있는 기법 중 하나로 

여러 개의 파일로 분리하는 것이다.

효과는

 

- 자주 사용되는 코드를 별도의 파일로 만들어 필요할 때마다 재활용 가능

- 코드를 개선하면 이 코드를 사용하는 모든 앱의 동작이 개선

- 코드 수정 시 필요한 로직을 빠르게 찾을 수 있다.

- 필요한 로직만을 로드해서 메모리 낭비를 줄일 수 있다.

 

먼저 include없는 파일을 만들어 보자

만약 welcome함수가 자주 사용되는 코드라면

쓸 때마다 이 함수를 정의하는 건 번거롭다.

이럴 떄 사용하는 것이 include이다.

 

include파일을 만들어 보자

greeting.php이름을 가진 welcome함수 파일

그리고 본인이 만들 파일을 만든 후 include 해본다.

이렇게 결과는 같지만 welcome을 외부 파일로 분리해서 사용한 결과이다.

결론은

include는 외부의 PHP파일을 로드할 때 사용하는 명령이다.

 

추가로 

include 외에 require이 있다.

거의 비슷하지만

include가 불러오는 파일이 존재하지 않을 때는 warning으로써 경고하지만

require는 fatal error로써 심각한 에러를 표현하기에 보다 엄격한 로드 방법이다.

 

추가로2

include나 require뒤에 _once를 붙이면

파일을 로드할 때 단 한 번만 로드하면 된다는 의미이다.

 


[namespace]

이름의 공간? 

namespace는 함수와 상수와 클래스 같은 것들의 이름이며 쉽게 말해

같은 이름을 가지고 있는 것들의 충돌을 막는 것이다.

어우 어렵다

더 쉽게 말해

이름이 서로 같은 파일을 한 번에 불러오면 오류가 뜨니까

그걸 방지하기 위해 같은 이름 파일들에게 namespace를 적용하면 불러올 때 오류가 나지 않는다.

물론 하나의 파일에 같은 이름을 가진 함수도 가능하다.

 

영어 인사 파일 만들고

한국어 인사 파일 만들고

namespace 적용해서 로드

그냥 echo에 각 파일에 정한 namespace이름을 함수 앞에 슬래쉬로 적어주면 된다. 개 쉬움.

 

 

 

 

 

 

 

 

'PHP > PHP의 기본' 카테고리의 다른 글

디렉토리  (0) 2021.09.17
파일  (0) 2021.09.17
배열 Array  (0) 2021.09.14
함수 (function)  (0) 2021.09.14
반복문  (0) 2021.09.14