Hola como estan, soy nuevo en el foro , bueno mi duda es la siguiente: Por que en una función que tengo con un array me devuelve todos los valores si pongo echo, pero si pongo return solo me devuelve un valor, les dejo parte del código, para ser mas claro:
Código PHP:
public function getpathlivepos_json($num) {
.
.
.
foreach($Rs as $Route)
{
$arrayJson = array();
$i = 0;
foreach($Route->TrackerRouteList as $unit)
{
$arrayJson[$i]['Unit'] = $unit->TrackerId;
foreach($unit->CoordinateList as $Coordinates)
{
$arrayJson[$i]['Coordinates'][] = array($Coordinates->Latitude, $Coordinates->Longitude);
}
$i++;
}
return json_encode($arrayJson);
}
}
El resultado de este codigo, usando return para la devolucion de valores,es el siguiente:
[{"Unit":7,"Coordinates":[["21.115957","-86.838120"]]}];
Ahora bien si cambio el return json_encode($arrayJson); por echo:
echo json_encode($arrayJson);
Me devuelve todos los valores que realmente necesito:
[{"Unit":7,"Coordinates":[["21.115957","-86.838120"]]}][{"Unit":8,"Coordinates":[["21.110843","-86.840906"]]}][{"Unit":9,"Coordinates":[["21.110757","-86.841915"]]}]
Como puedo hacer para que mi función me devuelva todos los valores que necesito en formato Json?
Muchas gracias.