array_key_exists

(PHP 4 >= 4.0.7, PHP 5, PHP 7, PHP 8)

array_key_existsVerifica se uma chave ou índice existe em um array

Descrição

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

array_key_exists() retorna true se a chave key existe no array. key pode ser qualquer valor possível para um índice de um array.

Parâmetros

key

Valor para verificar.

array

Um array com chaves para verificar.

Valor Retornado

Retorna true em caso de sucesso ou false em caso de falha.

Nota:

array_key_exists() procurará pelas chaves na primeira dimensão apenas. Chaves aninhadas em arrays multidimensionais não serão encontradas.

Registro de Alterações

Versão Descrição
8.0.0 O parâmetro key agora aceita bool, float, int, null, resource e string como argumentos.
8.0.0 Passar um object para o parâmetro array não é mais suportado.
7.4.0 Passar um object para o parâmetro array foi descontinuado. Use property_exists() em seu lugar.

Exemplos

Exemplo #1 Exemplo da função array_key_exists()

<?php
$busca_array
= ['primeiro' => 1, 'segundo' => 4];
var_dump(array_key_exists('first', $searchArray));
?>

O exemplo acima produzirá:

bool(true)

Exemplo #2 array_key_exists() versus isset()

isset() não retorna true para valores de chave que correspondam a um valor null, enquanto que array_key_exists() faz isto.

<?php
$search_array
= ['primeiro' => null, 'segundo' => 4];

var_dump(isset($searchArray['first']));
var_dump(array_key_exists('first', $searchArray));
?>

O exemplo acima produzirá:

bool(false)
bool(true)

Veja Também

  • isset() - Determina se uma variável está declarada e é diferente de null
  • array_keys() - Retorna todas as chaves ou uma parte das chaves de um array
  • in_array() - Checa se um valor existe em um array
  • property_exists() - Verifica se o objeto ou a classe tem uma propriedade

adicione uma nota

Notas Enviadas por Usuários (em inglês) 4 notes

up
12
Rumour
1 year ago
In PHP7+ to find if a value is set in a multidimensional array with a fixed number of dimensions, simply use the Null Coalescing Operator: ??

So for a three dimensional array where you are not sure about any of the keys actually existing

<?php

// instead of:
$exists = array_key_exists($key1, $arr) && array_key_exists($key2, $arr[$key1]) && array_key_exists($key3, $arr[$key1][$key2]) ;

// use:
$exists = array_key_exists($key3, $arr[$key1][$key2]??[]) ;

?>
up
11
Julian
2 years ago
When you want to check multiple array keys:

<?php

$array
= [];
$array['a'] = '';
$array['b'] = '';
$array['c'] = '';
$array['d'] = '';
$array['e'] = '';

// all given keys a,b,c exists in the supplied array
var_dump(array_keys_exists(['a','b','c'], $array)); // bool(true)

function array_keys_exists(array $keys, array $array): bool
{
$diff = array_diff_key(array_flip($keys), $array);
return
count($diff) === 0;
}
up
0
developerxyz852 at gmail dot com
5 days ago
<?php

// Define an associative array
$userProfile = [
'name' => 'John Doe',
'email' => 'john.doe@example.com',
'age' => 30,
'country' => 'USA'
];

// Key to check
$keyToCheck = 'email';

// Use array_key_exists to check if the key exists in the array
if (array_key_exists($keyToCheck, $userProfile)) {
echo
"The key '$keyToCheck' exists in the array with value: " . $userProfile[$keyToCheck];
} else {
echo
"The key '$keyToCheck' does not exist in the array.";
}

?>
up
0
developerxyz852 at gmail dot com
5 days ago
<?php

// Define an associative array
$userProfile = [
'name' => 'John Doe',
'email' => 'john.doe@example.com',
'age' => 30,
'country' => 'USA'
];

// Key to check
$keyToCheck = 'email';

// Use array_key_exists to check if the key exists in the array
if (array_key_exists($keyToCheck, $userProfile)) {
echo
"The key '$keyToCheck' exists in the array with value: " . $userProfile[$keyToCheck];
} else {
echo
"The key '$keyToCheck' does not exist in the array.";
}

?>
To Top