common.php 경로 질문

common.php 경로 질문

QA

common.php 경로 질문

본문

안녕하세요!

common.php 경로와 관련하여 질문이 있습니다.

testA라는 디렉토리 생성 후 아래와 같이 _common.php, a1, a2라는 경로를 추가 하였습니다.

 

제가 하고 싶은것은 타이틀 부분을 지정시에 [testA | a1] 이런식 인데

testA 안의 공통 _common.php 1차 타이틀을 지정해주고 

a1 안의 index에서 2차 타이틀을 추가 하려고 합니다.

 

- testA

    - _common.php   ->  include_once('../common.php'); //루트 common.php 파일 불러옴

                                 $title = 'testA'; //타이틀지정

    - a1

         - index.php   -> include_once('../_common.php');

                               $title .= 'a1';

    - a2

         - index.php 

     

    

여기서 문제가 a1/index.php 에서 include_once('../_common.php'); 이 작동을 하지 않습니다.

다른 경우를 찾아봐도  ../../common.php 이런식으로 되지 _common.php을 두번 연결한 경우는 없더라구요.  _common.php 파일을 여러번 연결하는건 안되는건가요?

 

이 질문에 댓글 쓰기 :

답변 2

_common.php 파일에서 common.php 를 include 하는 방식을 보시면 상대경로 로 가져옵니다

해당 파일이 있는 위치가 아닌 실행하는 파일 (a1/index.php 파일 기준으로 경로를 찾게 됩니다.)

 

따라서 a1 폴더 등 각 폴더별로 _common.php 파일을 만드시고 해당 파일에서

../../common.php 의 형태로 호출하셔야 합니다.

 

각 폴더별로 _common.php 파일 생성해서 호출하는것 말고
testA/_common.php 에서 ../../common.php 으로 호출하고
a1/index.php 에서 ../_common.php 로 호출하면
정상적으로 불러와지는데 이렇게 해도 상관없는건가요?

실제 common.php 파일의 위치가 / <= 이고

/testA/

/a1/

이렇게 서브폴더가 있을때

1. testA/_common.php 에서 ../../common.php   을 호출 => testA 폴더 기준 2단계 위로 올라가서 common.php 을 호출하게 됩니다

 

2. a1/index.php 에서 ../_common.php 파일을 호출 => testA/_common.php 안에서의 내용이 

   ../../common.php 이면 정상호출

 

즉 /testA/a1/ 의 구조를 가지고있을때 

/testA/_common.php 파일에서 ../../common.php 를 호출하면 오류(testA 기준으로 루트폴더는 한단계 위이므로)

/testA/a1/index.php 파일에서 ../_common.php  를 호출하면 정상호출 (a1 기준으로 루트폴더는 두단계 위이므로)

 

라고 보시면 됩니다

답변을 작성하시기 전에 로그인 해주세요.
전체 38
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT