$planetKey, 'name' => getPlanetName($planetKey, $mode), 'short' => getPlanetShortName($planetKey), 'house' => $segment, 'longitude' => $normalizedLongitude, 'sign_key' => $signKey, 'sign' => getSignName($signKey, $mode), 'degree_value' => $degreeWithinSign, 'degree' => formatDegree($degreeWithinSign), 'nakshatra_key' => $nakshatraKey, 'nakshatra' => getNakshatraName($nakshatraKey, $mode) ]; } function sortPlanetsByLongitude(array $planets): array { usort($planets, function ($a, $b) { return ($a['longitude'] ?? 0) <=> ($b['longitude'] ?? 0); }); return $planets; } function getSegmentFromLongitude(float $longitude): int { $longitude = normalizeLongitude($longitude); return ((int) floor($longitude / 30)) + 1; }