Leistung von foreach, array_map mit Lambda und array_map mit statischer Funktion

Was ist der Leistungsunterschied (falls vorhanden) zwischen diesen drei Ansätzen, die beide zum Transformieren eines Arrays in ein anderes Array verwendet werden?

VerwendenforeachVerwendenarray_map mit Lambda / VerschlussfunktionVerwendenarray_map mit 'statischer' Funktion / MethodeGibt es einen anderen Ansatz?

Schauen wir uns zur Verdeutlichung die Beispiele an, die alle dasselbe tun: Multiplizieren Sie das Zahlenfeld mit 10:

$numbers = range(0, 1000);

Für jeden

$result = array();
foreach ($numbers as $number) {
    $result[] = $number * 10;
}
return $result;

Karte mit Lambda

return array_map(function($number) {
    return $number * 10;
}, $numbers);

Map mit 'statischer' Funktion, übergeben als Stringreferenz

function tenTimes($number) {
    return $number * 10;
}
return array_map('tenTimes', $numbers);

Gibt es einen anderen Ansatz? Ich werde mich freuen zu hörenalles Unterschiede zwischen den Fällen von oben, und alle Eingaben, warum man anstelle von anderen verwendet werden sollte.

Antworten auf die Frage(3)

Ihre Antwort auf die Frage