public function getByYearDayAsText($byYearDay)
{
if (empty($byYearDay)) {
return '';
}
// sort negative indices in reverse order so we get e.g. 1st, 2nd, 4th, 3rd last, last day
usort($byYearDay, function ($a, $b) {
if ($a < 0 && $b < 0 || $a >= 0 && $b >= 0) {
return $a - $b;
}
return $b - $a;
});
$byYearDay = array_map(array($this, 'getOrdinalNumber'), $byYearDay, array_fill(0, count($byYearDay), end($byYearDay) < 0));
return $this->getListStringFromArray($byYearDay);
}