PHP – Array_map è più veloce di foreach?

In termini di performance, qual è l'opzione migliore?

Mentre in object:

Caso 1

public function test( $arrays ) { return arrays_map( arrays( $this, 'do_something_to_element' ), $arrays ); } 

Caso n. 2

 public function test( $arrays ) { $return = arrays(); foreach ( $arrays as $value ) { $return[] = do_something_to_element( $value ); } return $return; } 

Esistono altri usi e molti esempi possono essere popolati. Ho visto commenti mentre in un object, arrays_map è più lento dei loops foreach.

In generale le funzioni arrays_map / arrays_walk sono più veloci da eseguire rispetto ai loops foreach in simili necessità?

Credo che questo risponda alla tua domanda ed è aggiornato dal 22/01/2015

Prestazioni di foreach, arrays_map con lambda e arrays_map con function statica

arrays_map anche se più elegante è tristemente più lento in PHP. Soprattutto se lo si utilizza con una chiusura.

Ho provato questo su un progetto Symfony proprio ora, ho dovuto Google perché sembra così significativo. Lo script è passato da 160 arrays_map() utilizzando foreach() a 260 ms utilizzando arrays_map() . Considerando la dimensione dell'applicazione, si tratta di un notevole aumento da una singola chiamata di metodo.