PHP | función array_diff_key()

Esta función incorporada de PHP se usa para obtener la diferencia entre una o más arrays. Esta función compara las claves entre una o más arrays y devuelve la diferencia entre ellas. Entonces, la función generalmente compara dos arrays de acuerdo con sus claves y devuelve los elementos que están presentes en la primera array pero no en otras arrays de entrada.

Nota: esta función es diferente de array_diff() y array_diff_assoc(). El primero solo usó los valores para comparar. El segundo usa claves y valores para comparar. Donde array_diff_key() usa solo las claves para comparar.

Sintaxis:

array array_diff_key($array1, $array2, $array3, ..., $array_n)

Parámetros: la función puede tomar cualquier número de arrays como parámetros necesarios para comparar.

Tipo de devolución: esta función compara la clave de la primera array de parámetros con el resto de las arrays y devuelve una array que contiene todas las entradas de $array1 que no están presentes en ninguna de las otras arrays.

Ejemplos:

Input : 
$array1 = ("10"=>"RAM", "20"=>"LAXMAN", "30"=>"RAVI", 
                      "40"=>"KISHAN", "50"=>"RISHI")
$array2 = ("10"=>"RAM", "70"=>"LAXMAN", "30"=>"KISHAN", 
                                        "80"=>"RAGHAV")
$array3 = ("30"=>"LAXMAN", "80"=>"RAGHAV")
Output :
Array
(
    [20] => LAXMAN
    [40] => KISHAN
    [50] => RISHI
)

Input :
$array1 = ("10"=>"RAM", "20"=>"LAXMAN", "30"=>"RAVI", 
                      "40"=>"KISHAN", "50"=>"RISHI");
$array2 = ("10"=>"LAXMAN", "40"=>"RAGHAV", "40"=>"KISHAN");
Output :
Array
(
    [10] => RAM
    [20] => LAXMAN
    [30] => RAVI
    [50] => RISHI
)

El siguiente programa ilustra el funcionamiento de array_diff_key() en PHP:

<?php
  
// PHP code to illustrate the 
// array_diff_key() function
  
// Input Arrays
$array1 = array("10"=>"RAM", "20"=>"LAXMAN", "30"=>"RAVI", 
                            "40"=>"KISHAN", "50"=>"RISHI");
$array2 = array("10"=>"RAM", "70"=>"LAXMAN", 
                "30"=>"KISHAN", "80"=>"RAGHAV");
$array3 = array("30"=>"LAXMAN", "80"=>"RAGHAV");
  
print_r(array_diff_key($array1, $array2, $array3));
  
?>

Producción:

Array
(
    [20] => LAXMAN
    [30] => RAVI
    [40] => KISHAN
    [50] => RISHI
)

Referencia :
http://php.net/manual/en/function.array-diff-key.php

Publicación traducida automáticamente

Artículo escrito por Chinmoy Lenka y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *