Функция возврата PHP-функции не работает - PullRequest
0 голосов
/ 28 мая 2018

Я создал функцию (рекурсивную).Он будет вызывать снова, если у него есть родительский идентификатор, в противном случае он вернет последний идентификатор.Проблема в том, что я не могу вернуть последний Id, переданный в аргументе Function.Он показывает завершение, если я использую var_dump () или echo, но не могу вернуться в return ().

Вот пример кода:

function abc($dbcon,$id){
    $get_quy = "select * from member_mst where member_status=0 and pid=".$id;
    $get_rs = $dbcon->query($get_quy);

    $get_numrows = mysqli_num_rows($get_rs);
    $get_rel = mysqli_fetch_assoc($get_rs);

    if($get_numrows>0){
        abc($dbcon,$get_rel['member_id']);
    }else{
        //var_dump($id);//This will return => "String '3'" 
        return $id;
    }
}
var_dump(abc($dbcon,1));//Returning Null 

1 Ответ

0 голосов
/ 28 мая 2018

Вот рабочий код.Проблема была в том, что я не использовал return () при повторном вызове функции.

function abc($dbcon,$id){
    $get_quy = "select * from member_mst where member_status=0 and pid=".$id;
    $get_rs = $dbcon->query($get_quy);

    $get_numrows = mysqli_num_rows($get_rs);
    $get_rel = mysqli_fetch_assoc($get_rs);

    if($get_numrows>0){
        return abc($dbcon,$get_rel['member_id']); // Updated Code Here
    }else{
        return $id;
    }
}
var_dump(abc($dbcon,1));//Returning "3"
...