Sollte ich das Ergebnis einer Funktion in einem Array speichern?

Ich habe eine Funktion wie diese:

function time_elapsed_string($ptime)
{
            $date_time = strtotime("1348-10-10 04:30:01") + $ptime;
            $year = date("Y",$date_time);
            $month = date("m",$date_time);
            $day = date("d",$date_time);
            $time = date("H:i:s",$date_time);

    $etime = time() - $ptime + 1;

    $a = array( 31536000  =>  'year',
                 2592000  =>  'month',
                   86400  =>  'day',
                    3600  =>  'hour',
                      60  =>  'minute',
                       1  =>  'second'
                );

    foreach ($a as $secs => $str)
    {
        $d = $etime / $secs;
        if ($d >= 1)
        {
            $r = round($d);
                                                                   // EX:
            return array('date' => $day.'-'.$month.'-'.$year,      // 2016-02-20
                         'time' => $time,                          // 03:30:04
                         'difference' => $r . ' ' . $str . ' ago'  // 2 month ago
                        );
        }
    }
}

Und ich benutze es so:

$ptime = 1470692661;
$html = '<span title="date: '.time_elapsed_string($ptime)['date'].' time: '.time_elapsed_string($ptime)['time'].'">in '.time_elapsed_string($ptime)['difference'].'<span>';

Wie Sie sehen, verwende ich das Ergebnis dieser Funktion wie folgt:

time_elapsed_string($ptime)['date']
ime_elapsed_string($ptime)['time']
time_elapsed_string($ptime)['difference']

Tatsächlich rufe ich diese Funktion jedes Mal auf, wenn ich eines ihrer Ergebnisse benötige. Ist das richtig? Oder soll ich es einmal aufrufen und in einem Array speichern?

Hinweis Mein Code funktioniert auch.

Antworten auf die Frage(4)

Ihre Antwort auf die Frage