La fonction array_merge() crée un tableau à partir de la fusion de plusieurs tableaux. Si une clé numérique existe déjà dans un des tableaux, une nouvelle est créée. Si une clé alpha existe déjà, la valeur précédente est remplacée par la nouvelle.
La fonction array_diff() crée un tableau à partir de la différence de plusieurs tableaux. Les valeurs sont comparées avec l'opérateur d'égalité stricte (===) : elles doivent être égales et de même type. Seules les valeurs du premier tableau qui ne sont pas dans les autres sont "retournées".
Nous pouvons créer un tableau par le filtrage d'un autre avec fonction array_filter(). La fonction accepte comme argument le tableau à filtrer, et le nom de la fonction utilisée pour le filtrage. Cette fonction doit renvoyer true pour indiquer que l'élément est à garder, ou false pour indiquer qu'il est à exclure. Le filtrage travaille uniquement sur la valeur des éléments et non sur leur clé. Dans le cas d'un tableau à indices numériques, les clés sont préservées, ce qui peut causer des trous dans la consécutivité des indices.