Laravel:如何将对象推入变量并返回?

时间:2014-11-28 05:50:24

标签: laravel collections push

我正在尝试从这个左右树的给定节点返回直接子节点:

left-right tree

这是我在模型中的代码:

    public function scopeHijos($query, $categoria_id){
        $categoria = Categoria::find($categoria_id);
        echo $izq = $categoria->izquierda;
        echo $der = $categoria->derecha;
        $izq++;
        echo $izq;
        if ($izq<$der) {
            do {
                $hijo = Categoria::where('izquierda', $izq)
                    ->take(1)
                    ->get();
                foreach ($hijo as $hijo) {
                    //$hijos->push($hijo);
                    $i = ($hijo->derecha)+1;
                }
                $izq=$i;
            } while ( $izq<$der);
        }

        //return $hijos;
    }
}

问题在于$ hijos-&gt; push($ hijo)。我找不到一种方法将查询结果推送到$ hijos var以便返回它。怎么办呢?

非常感谢。

2 个答案:

答案 0 :(得分:0)

哟你没问题。 pero no se eso arreglar la problema tienes pero intenta eso

Tienes

foreach ($hijo as $hijo)

坎比奥

foreach ($hijos as $hijo) // CON S

la variable $ hijos es definida en la scope local。 Cuando函数试图返回$ hijos它不知道$ hijos是什么因为未在函数范围内定义。

答案 1 :(得分:0)

有一个非常简单的答案:在表格中添加“父”字段并在类别模型中创建自我关系。