채택완료

반복문 질문드립니다.

2023-12-15 (금) 15:02:28 1,914
Copy
$tree_data = 0;
function findUser($wr_id)
{
    global $model;
    global $tree_data;
    $childs = [];
    foreach ($model as $key => $val) {
        if ($val['wr_6'] == $wr_id) {
            $tree_data++;
            $childs[] = $val;
        }
    }
    foreach ($childs as $key => $val) {
        findUser($val['wr_id']);
    }
}

wr_id 값 전체 조회해서 반복하라는 문인데

혹시 여기서

wr_id = 1번값만 추출하게 하려면 어떻게 해야 되나요? ㅠ

|

답변 2개

채택된 답변
+20 포인트
2023-12-16 (토) 11:18:59

다음과 같은 방법도 있은 참고해 보세요

Copy
$tree_data = 0;
$result = [];

function findUser($wr_id)
{
    global $model;
    global $tree_data;
    global $result;

    $childs = [];
    foreach ($model as $key => $val) {
        if ($val['wr_6'] == $wr_id) {
            $tree_data++;
            $childs[] = $val;
        }
    }

    foreach ($childs as $key => $val) {
        if ($val['wr_id'] == 1) {
            $result[] = $val;
        }
        findUser($val['wr_id']);
    }
}

// $model이 이미 정의되어 있다고 가정합니다.

// 초기 검색을 위해 함수 호출
findUser(0);

// 결과를 출력합니다. wr_id가 1인 경우에 대한 정보가 $result 배열에 저장됩니다.
print_r($result);
Copy
$tree_data = 0;
function findUser($wr_id)
{
    global $model;
    global $tree_data;
    $childs = [];

 

    if ($wr_id != 1) {
        return;
    }
    
    foreach ($model as $key => $val) {
        if ($val['wr_6'] == $wr_id) {
            $tree_data++;
            $childs[] = $val;
        }
    }
    foreach ($childs as $key => $val) {
        findUser($val['wr_id']);
    }
}

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