En PHP existen dos diferentes tipos de arrays (o arreglos por su nombre en español). Estos arrays nos permiten guardar información a la cual podremos acceder luego mediante los índices de estos mismos. Justamente la diferencia entre los tipos de arrays en PHP son los índices que pueden tener. Tenemos en un caso los arrays con índices numéricos (los más comunes) y los arrays con índices cadenas de texto. Para estos dos tipos de arrays se puede guardar información dentro de cada índice,  además de tener la posibilidad de anidar arrays, es decir, guardar un array dentro de un array. Sin embargo, estaremos viendo únicamente arrays simples para no complicarnos tanto.
El array con índice numérico, como su nombre lo indica, tiene números enteros como índices. Por ejemplo, queremos guardar en un array con índices numéricos 5 colores (amarillo, verde, rojo, negro, azul). En PHP sería de la siguiente forma:
Además de permitirnos asignar valores a los índices del arrays de aquella forma, podemos utilizar el siguiente método también, el cual es equivalente al anterior:
La única diferencia es que en la segunda forma de iniciar el array, no se indican los índices de manera explícita. Sin embargo, PHP asumirá que se comienza desde el índice 0 siempre.
El otro tipo de arrays son los que tienen como índice cadenas de texto. Estos arrays suelen ser bastante útiles en caso queramos guardar información adicional y son muy utilizados cuando se recupera información de una base de datos. Por ejemplo, queremos guardar en un solo array nombres de personas junto con el color que le gusta a cada una de ellas. Aquello lo podemos lograr con un array de índices cadenas de texto, sin embargo, con un array de índices numéricos esto no se podría lograr. La sintaxis sería la siguiente:
En este caso, vemos que el índice “jose” del array contiene el valor “amarillo” y el índice “kevin” del array contiene el valor “azul”. Con esto estamos guardando información adicional en un único array.