테스트 사이트 - 개발 중인 베타 버전입니다

폴더에 있는 파일 실행하기? 채택완료

레드불355 3년 전 조회 2,177

adm메뉴 처럼 일반 메뉴도 같은 로직으로 만들려고 하는데

 

adm 폴더에 있는 admin.menu.100.php 이런 파일 갯수에 따라 유기적으로

파일의 배열을 읽어오는 거잖아요..

 

이러한 로직이 돌아가는 소스가 어디 있을까요?

 

 

결론적으로는 예를 들어

 

menu폴더를 만들어서

메뉴가 4개라고 하면

main.menu,100.php

main.menu,200.php

main.menu,300.php

main.menu,400.php

파일로 만들고

서브메뉴가 ㅇㅆ다면 

main.menu,100.php 파일안데 배열로 넣고 싶거든요..

 

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

답변 1개

채택된 답변
+20 포인트
m
3년 전

</p>

<p><?php </p>

<p>$path = "./";

$menu = get_menu($path);</p>

<p>for($i=0; $i<count($menu); $i++){

    if($menu[$i]['type'] == "file"){

        echo $menu[$i]['filename'];

        echo "
";

    }

    if($menu[$i]['type'] == "dir"){

        $submenu = get_menu($path.$menu[$i]['filename']."/");

        for($j=0; $j<count($submenu); $j++){

            

            echo "ㅏ".$submenu[$j]['filename'];

            echo "
";

        }

    }

}

function get_menu($path){

    if(!is_dir($path))

        return;</p>

<p>    $result = "";

    $a = 0;

    $dir = opendir($path);

    if($dir) {

        while(($file = readdir($dir)) !== false) {

            if ($file == "." || $file == "..") {

                continue;

            }</p>

<p>            if(is_file($path.$file)) {

                $result[$a]['type'] = "file";

                $result[$a]['filename'] = $file;

                $a++;

                

            }

            

            if(is_dir($path.$file)) {

                $result[$a]['type']= "dir";

                $result[$a]['filename']= $file;

                $a++;

            }

            

        }

        closedir($dir);

    }

    

    return $result;</p>

<p>}</p>

<p>

로그인 후 평가할 수 있습니다

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

답변을 작성하려면 로그인이 필요합니다.

로그인