6.7 Mehr als einen Wert zurückgeben
Problem
Sie möchten aus einer Funktion mehr als nur einen Wert zurückgeben.
Lösung
Geben Sie ein Array zurück und trennen Sie dessen Elemente mit list()
:
function averages($stats) { // ... return array($median, $mean, $mode); } list($median, $mean, $mode) = averages($stats);
Diskussion
Aus Performance-Sicht ist dies keine besonders gute Idee. Es führt zu einer zusätzlichen Belastung, wenn PHP gezwungen wird, ein Array anzulegen und gleich wieder wegzuwerfen. Und dies geschieht in dem folgenden Beispiel:
function time_parts($time) { return explode(':', $time); } list($hour, $minute, $second) = time_parts('12:34:56');
Sie übergeben einen Zeit-String, wie man ihn auf einer Digitaluhr sehen kann, und rufen explode()
auf, ...
Get PHP 5 Kochbuch, Third Edition now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.