Avatar ·

Was ist der Unterschied zwischen array_map, array_walk und array_filter in PHP?

Hallo zusammen! Ich habe gerade angefangen, PHP zu lernen und verstehe den Unterschied zwischen den Funktionen array_map, array_walk und array_filter nicht. Sie alle akzeptieren anscheinend ein callback und wenden es auf ein Array an. Aber wenn ich versuche, sie in echtem Code zu verwenden, sind die Ergebnisse unterschiedlich oder ich verstehe überhaupt nicht, welche ich wählen soll.\n\nZum Beispiel habe ich ein Array mit Zahlen:\n```php\n$numbers = [1, 2, 3, 4, 5];\n```\n\nIch möchte:\n1. Jede Zahl mit 2 multiplizieren.\n2. Jede Zahl mit dem Präfix "Number: " ausgeben.\n3. Nur gerade Zahlen filtern.\n\nIch habe array_map ausprobiert:\n```php\n$doubled = array_map(function($n) { return $n * 2; }, $numbers);\n```\nEs scheint zu funktionieren, gibt ein neues Array zurück. Aber kann man auch array_walk verwenden? Oder array_filter?\n\nIch habe array_walk ausprobiert:\n```php\narray_walk($numbers, function(&$n) {