Compruebe si la clave existe en el array en PHP

Shraddha Paghdar 30 enero 2023
  1. Verifique si la clave existe en el array PHP usando la función array_key_exists()
  2. Compruebe si la clave existe en el array PHP utilizando la función isset()
  3. array_key_exists() vs isset() en PHP
Compruebe si la clave existe en el array en PHP

un array es una única variable en PHP que contiene muchos elementos en su interior. Cada elemento almacenado dentro del array tiene un índice único como la clave principal en la base de datos asignada. Puede acceder al elemento de un array utilizando ese índice. Es posible que su secuencia de comandos necesite verificar si existe una clave en particular o no para realizar una operación en el valor. En este artículo tutorial, discutiremos cómo verificar si una clave específica existe o no en su matriz.

PHP admite tres tipos de matrices:

  1. Matrices indexadas: matrices con un índice numérico, donde solo se proporcionan valores. P.ej. array(1,2,3).
  2. Matrices asociativas: matrices con claves con nombre, donde la clave también se define junto con el valor como un objeto JSON. P.ej. array("first" => 1, "second" => 2).
  3. Matrices multidimensionales: matrices que contienen una o más matrices anidadas. Por ejemplo, array(array("a", "b", "c"), array("d", "e", "f"), array("g", "h", "i")).

PHP proporciona dos formas de averiguar si el array contiene una clave o no. Primero, entenderemos esos dos métodos y luego los compararemos para obtener nuestro resultado.

Verifique si la clave existe en el array PHP usando la función array_key_exists()

PHP proporciona la función incorporada array_key_exists, que comprueba si la clave o índice dados existe en el array proporcionada. La función array_key_exists funciona con matrices indexadas y matrices asociativas, pero no se encontrarán claves anidadas en matrices multidimensionales. array_key_exists buscará las claves dentro de la primera dimensión solamente. Si no existe ningún par clave-valor, el array considera las teclas numéricas como claves predeterminadas a partir de cero.

Sintaxis de array_key_exists()

array_key_exists(string|int $key, array $array): bool

Parámetros

  • $key (mandatory): este parámetro se refiere a la clave / índice que se necesita buscar en un array de entrada.
  • $array (mandatory): este parámetro se refiere al array / pajar original en el que queremos buscar la clave / índice $key dado.

Valores devueltos

Devuelve verdadero si se encuentra la clave / índice o falso si no se encuentra la clave / índice.

Código de ejemplo

<?php
  $search_array = array('first' => 1, 'second' => 2);
  if (array_key_exists('first', $search_array)) {
    echo "The 'first' element is found in the array";
  } else {
    echo "Key does not exist";
  }
?>

Producción :

The 'first' element is found in the array

Compruebe si la clave existe en el array PHP utilizando la función isset()

PHP proporciona la función isset(), que determina si se establece una variable; esto significa si se declara una variable y se le asigna un valor distinto de nulo. isset() devolverá falso cuando una variable se haya asignado a nulo.

Sintaxis de isset()

isset(mixed $var, mixed ...$vars): bool

Puede pasar muchos parámetros, si se proporcionan muchos parámetros, entonces isset() devolverá verdadero solo si todos los parámetros pasados ​​están configurados. PHP evalúa de izquierda a derecha y se detiene tan pronto como se encuentra una variable no configurada.

Parámetros

  • $var: La primera variable a comprobar.
  • $vars: Otras variables a comprobar.

Valores devueltos

Devuelve verdadero si la variable existe y tiene cualquier valor además de nulo, de lo contrario es falso.

Código de ejemplo

<?php
  $search_array = array('first' => 1, 'second' => 2);
  if (isset($search_array['first'])) {
    echo "The 'first' element is found in the array";
  } else {
    echo "Key does not exist";
  }
?>

Producción :

The 'first' element is found in the array

array_key_exists() vs isset() en PHP

isset() no devuelve true para las claves de matriz que corresponden a un valor null, mientras que array_key_exists() devuelve true.

<?php
    $search_array = array('first' => null, 'second' => 2);
    echo isset($search_array['first']) ? "true" : "false";
    echo "\n";
    echo array_key_exists('first', $search_array) ? "true" : "false";
?>

Producción :

false
true
Shraddha Paghdar avatar Shraddha Paghdar avatar

Shraddha is a JavaScript nerd that utilises it for everything from experimenting to assisting individuals and businesses with day-to-day operations and business growth. She is a writer, chef, and computer programmer. As a senior MEAN/MERN stack developer and project manager with more than 4 years of experience in this sector, she now handles multiple projects. She has been producing technical writing for at least a year and a half. She enjoys coming up with fresh, innovative ideas.

LinkedIn

Artículo relacionado - PHP Array