Nein, es gibt keinen schnelleren Weg als Ihren implementierten Code. Alle anderen Methoden werden aufgrund des Aufwands eines Funktionsaufrufs langsamer ausgeführt. Bei einem kleinen Array wird der Unterschied trivial sein, aber bei einem großen Array (100 Mitglieder oder so, je nach Implementierung) kann der Unterschied sehr groß sein ...
Sie könnten array_map
it, aber ich bleibe bei der rohen PHP, die Sie oben gepostet haben ... Es ist einfacher zu pflegen und IMHO besser lesbar ...
Erzählen Sie mir doch, welches auf einen Blick Ihnen sagt, was es mehr macht:
%Vor%vs
%Vor%Oder:
%Vor% Persönlich macht das erste für mich das Beste. Es ist sofort offensichtlich, ohne irgendetwas zu wissen, was es tut. Die anderen erfordern Kenntnisse über array_map
Semantik zu verstehen. Verbinde das mit der Tatsache, dass array_map
langsamer ist, und es ist ein doppelter Gewinn für foreach
.
Code sollte nur so elegant wie nötig sein. Es sollte vor allem anderen lesbar sein ...
Sicher, verwenden Sie array_map
:
Wenn Sie PHP 5.3+ verwenden, können Sie auch eine Lambda-Funktion verwenden:
%Vor%Wenn label das erste Element im Array ist, funktioniert "current" mit array_map einwandfrei.
%Vor%Tags und Links arrays php mapping multidimensional-array