1. 程式人生 > >關於靜態變數問題

關於靜態變數問題

需求拿到陣列中的id放在一個數組中:

首先我自己寫了一個方法:

function getID($arr){
        $id = [];
        foreach($arr as $key => $val){
            $id[] = $val['id'];
            if(is_array($val['child'])){
                echo '1'."<br/>";
                $this->getID($val['child']);
            }
        }
        return $id;
    }

結果是

由此可知 每次$id這個陣列都被重新賦為空陣列 , 估結果 陣列 只有一個值 

因此採取的方法 把這個id陣列變為靜態變數

我用的laravel

function getID($arr){
        foreach($arr as $key => $val){
            self::$type_id[] = $val['id'];
            if(is_array($val['child'])){
                $this->getID($val['child']);
            }
        }
        return self::$type_id;
    }

成功! 得到了我想要的陣列