SmartWeb

G5 어느 디렉터리 안에 있어도 자동으로 common.php의 위치를 찾아서 include 하도록 만드는 상위폴더 자동 탐색 로직

· 2025-11-23 (일) 19:08:30 · 3329 · 3

[code]<?php
$path = __DIR__;
while (!file_exists($path . '/common.php')) {
    $parent = dirname($path);
    if ($parent === $path) break;
    $path = $parent;
}

include_once($path . '/common.php');[/code]
✅ 1) 어떤 경로에서도 무조건 정확히 상위폴더를 따라감
dirname() 덕분에:
/a/b/c/d/skin/board/basic/play.php
→ /a/b/c/d/skin/board/basic
→ /a/b/c/d/skin/board
→ /a/b/c/d/skin
→ /a/b/c/d
→ /a/b/c
→ ...
→ /a
이런 식으로 실제 상위 폴더를 정확하게 올라감.

✅ 2) 운영체제 완전 무관
Windows → C:\Apache24\...
Linux → /home/user/...

둘 다 100% 동작.

✅ 3) 웹호스팅도 완벽 지원
/home 계정 구조
/var/www/html
C:\Apache24\htdocs

모두 문제 없음.

✅ PHP 5.0 ~ 5.2에서도 쓰고 싶으면?
__DIR__만 PHP 5.2 이하에서 문제가 될 수 있으므로
그럴 경우 아래처럼 한 줄만 바꿔주면 됨:

? PHP 5.2 이하 호환 버전:[code]<?php
$path = dirname(__FILE__);
while (!file_exists($path . '/common.php')) {
    $parent = dirname($path);
    if ($parent === $path) {
        break;
    }
    $path = $parent;
}

include_once($path . '/common.php');[/code]
PHP5.x 서버에서 가장 안정적이며 가장 깔끔한 구조입니다.
아무 환경에서나 100% 정상 동작합니다.

 

출처 : https://xpx.kr/home/source/239

|

댓글 3개

감사합니다. 

2025-11-25 (화) 09:01:02

감사합니다 ^^

감사합니다 

댓글을 작성하시려면 로그인이 필요합니다.

그누보드5 팁자료실

2,788건
+
제목 글쓴이 날짜 조회
25-12-06 조회 4,069
25-12-02 조회 3,973
25-11-30 조회 3,909
25-11-30 조회 3,592
25-11-27 조회 3,922
25-11-23 조회 3,413
25-11-23 조회 3,330
25-11-19 조회 3,331
25-11-15 조회 3,931
25-11-09 조회 3,341
25-11-06 조회 3,220
25-11-06 조회 3,660
25-11-05 조회 3,288
25-11-03 조회 3,036
25-11-01 조회 3,226
25-10-28 조회 3,109
25-10-28 조회 3,398
25-10-28 조회 3,055
25-10-27 조회 3,163
25-10-22 조회 3,148
25-10-22 조회 3,407
25-10-21 조회 2,892
25-10-17 조회 2,941
25-10-17 조회 2,893
25-10-17 조회 2,817
25-10-17 조회 2,897
25-10-15 조회 2,858
25-10-14 조회 2,902
25-10-14 조회 2,852
25-10-14 조회 3,640