Hola que tal!
tengo un pequeño problema.
quiero obtener el parentid principal de una consulta:
id|parent|
1 | 0 |
2 | 0 |
3 | 0 |
4 | 1 |
5 | 4 |
6 | 5 |
ya tengo una función que encontré y funciona a la perfección:
Código PHP:
$arr = array(
array('id' => 1, 'parent' => 0),
array('id' => 2, 'parent' => 0),
array('id' => 3, 'parent' => 0),
array('id' => 4, 'parent' => 1),
array('id' => 5, 'parent' => 4),
array('id' => 6, 'parent' => 5));
function get_key($arr, $id)
{
foreach ($arr as $key => $val) {
if ($val['id'] === $id) {
return $key;
}
}
return null;
}
function get_parent($arr, $id)
{
$key = get_key($arr, $id);
if ($arr[$key]['parent'] == 0)
{
return $id;
}
else
{
return get_parent($arr, $arr[$key]['parent']);
}
}
y se imprime así:
Código PHP:
get_parent($arr, 6); // me retorna el id 1
el problema es que quiero utilizarlo en mi consulta de MySQL y al pasar la consulta al array no trabaja la funcion y me imprime el mismo numero que puse 6
Código PHP:
$result=mysql_query("select id,parent from menu");
$var1 = array();
while($valor=mysql_fetch_array($result)) {
$var1[] = array('id' => $valor['id'],'parent' => $valor['parent']);
}
alguien que me pueda ayudar?
se los agradeceria!!! gracias!!!