포럼
include, require 에서 절대 경로 관련
2013.09.14 23:10
애드온에서 include_once, require_once를 통해 php 파일을 불러오려고 시도했습니다.
문제는 상대경로를 넣었을때는 일단 불러오는 부분은 문제가 없어 보이나 절대경로로 넣어버리면 불러오지를 못하는듯 싶습니다.
절대경로로 불러올 방법이 없을까요?
댓글 4
-
푸시아
2013.09.15 01:04
-
Gunmania
2013.09.15 09:26
현재 XE는 루트에 깔린 상태이고 불러올 PHP 파일은 루트 아래에 있는 폴더 내에 있습니다.
불러올 파일이 절대경로를 define하고 (define한 절대경로)/(파일).php로 include 하는데 여기까지만 생각하면 상대경로로 처리해도 문제가 없습니다. 문제는 그 불러올 파일 내에서 define한 절대 경로값을 통해 또 include가 사용되어 있는데 이러면 또 동작이 안되는 상태입니다.
(절대경로 사용하거나 define 미 사용시 : php include가 안되는 것으로 보임, 상대경로 define시 : 화면에 아무것도 출력되지 않음)
불러올 파일까지 전부 상대경로로 바꾸면 될지 모르겠습니다만 최대한 그 소스는 안건드리는쪽에서 해결하고 싶은데 좀 복잡하네요;;
-
skullacy
2013.09.15 07:57
제대로 된 상대경로를 변수하나에 넣으시고 FileHandler::getRealPath($url)하시면 절대경로가 리턴됩니다.
직접 적으신 절대경로와 비교해보시고 다르시다면 해당 함수의 리턴값을 쓰시면 될듯해요..
같은데 안되면...... 울어야죠 뭐..
-
Gunmania
2013.09.15 09:41
리턴값까지는 확인을 안하고 그냥 적용만 했는데 역시 안되네요.;;
xe의 index.php 파일이 있는곳부터 생각해서 애드온이라면
/addons/애드온명/인클루드폴더/인클루드.php
이렇게 되지 않을까요?