Con
PHP tenemos varias formas de añadir elementos a un array. El primero de ellos es la función nativa
array_push().
La sintaxis y los parámetros que debemos utilizar son los siguientes:
int array_push ( array &$array , mixed $value1 [, mixed $... ] );
Lo que hacemos es pasarle un
array por
referencia como primer parámetro y a continuación los
elementos a añadir. La función nos devolverá un valor entero con el
número de elementos del array después de haber insertado lo que hayamos definido.
Un
ejemplo lo podemos ver aquí:
<?php
$myarray = array('pera', 'manzana', 'naranja');
array_push($myarray, 'melón', 'sandía');
?>
Esto devolvería lo siguiente:
Array
(
[0] => pera
[1] => manzana
[2] => naranja
[3] => melón
[4] => sandía
)
Otra forma mucho
más sencilla para añadir un elemento al array sería:
<?php
$myarray[] = 'melón';
?>
Según la
documentación oficial de PHP, deberíamos utilizar esta
segunda forma si queremos únicamente añadir
un elemento, ya que así evitamos la sobrecarga de llamar a una función. Además, esta segunda forma
crea el array si no existe, mientras que con la función
array_push() nos devolvería un
warning.
Una
comparativa sobre la velocidad de ejecución la podemos ver con una simple prueba que detallamos:
<?php
$myarray = array();
for ($i=0; $i<100000; $i++){
array_push($myarray, $i);
} // tarda 1.5962453267801 segundos
$myarray = array();
for ($i=0; $i<100000; $i++){
$myarray[] = $i;
} // tarda 0.0614528790371 segundos
?>
En este caso la mejora de rendimiento es del orden de 26 veces.