Lo primero que debes hacer es agrupar tus valores en un nuevo array, y a partir de ahí iterar sus valores:
Código PHP:
Ver original$arrDatos[0] = array("nombre" => "test1", "id" => 2); $arrDatos[1] = array("nombre" => "test2", "id" => 2); $arrDatos[2] = array("nombre" => "test3", "id" => 3); $arrDatos[3] = array("nombre" => "test4", "id" => 3); $arrDatos[4] = array("nombre" => "test5", "id" => 4); $arrDatos[5] = array("nombre" => "test6", "id" => 5);
foreach ($arrDatos as $arr) {
if (!$arbol[$arr['id']]) {
$arbol[$arr['id']] = array(); }
$arbol[$arr['id']] []= $arr['nombre'];
}
Otra forma es guardar en memoria el valor del ID, así:
Código PHP:
Ver original$arrDatos[0] = array("nombre" => "test1", "id" => 2); $arrDatos[1] = array("nombre" => "test2", "id" => 2); $arrDatos[2] = array("nombre" => "test3", "id" => 3); $arrDatos[3] = array("nombre" => "test4", "id" => 3); $arrDatos[4] = array("nombre" => "test5", "id" => 4); $arrDatos[5] = array("nombre" => "test6", "id" => 5);
$actual = 0;
foreach ($arrDatos as $dato) {
if ($dato['id'] !== $actual) {
$actual = $dato['id'];
echo "$actual\n";
}
echo $dato['nombre'] . "\n";
}
¿Se entiende la idea?