Según las pruebas que hice con mi código funciona, aunque no se si los ultimos servicios de la sucursal 2 están completos, porque solo muestra 2, te dejo el código
Actualización 2: viendo detenidamente las tablas veo que no ingresaba el primer servicio por lo cual faltaba siempre 1 de los servicios, aquí dejo el código final
Código PHP:
Ver original<?php
function search_in_array($search,$array) {
$count = 0;
foreach($array as $item) {
if ($item['sucursal'] == $search) {
return $count;
}
$count++;
}
return false;
}
$sql = 'select sucursal,direccion,colonia,servicios from tblsucursal INNER JOIN tblserxsuc on tblsucursal.id_sucursal = tblserxsuc.id_sucursal
INNER JOIN tblservicio on tblservicio.id_servicio = tblserxsuc.id_servicio
where tblsucursal.id_municipio=1';
$numItems = 0;
$keyArray = search_in_array($item['sucursal'],$newArray);
if ($keyArray === false) {
$newArray[$numItems]['sucursal'] = $item['sucursal'];
$newArray[$numItems]['direccion'] = $item['direccion'];
$newArray[$numItems]['colonia'] = $item['colonia'];
$newArray[$numItems]['servicios'][] = $item['servicios'];
$numItems++;
}else {
$newArray[$keyArray]['servicios'][] = $item['servicios'];
}
}
echo '<pre>';
echo '</pre>';