PHP array_key_exists

Resumo : neste tutorial, você aprenderá como usar a array_key_exists()função PHP para determinar se existe uma chave em um array.

Introdução à função array_key_exists() do PHP

A função PHP array_key_exists()verifica se existe uma chave em um array . Aqui está a sintaxe da array_key_exists()função:

array_key_exists ( string|int $key , array $array ) : boolLinguagem de código:  PHP  ( php )

Nesta sintaxe:

  • $keyé a chave para verificar.
  • $arrayé um array com chaves para verificar.

A array_key_exists()função retorna truese $keyexistir no arquivo $array. Caso contrário, ele retorna false.

Observe que a array_key_exists()função procura a chave na primeira dimensão da $arrayúnica. Se the $arrayfor multidimensional , a array_key_exists()função não encontrará the $keyna dimensão aninhada.

Exemplo de função PHP array_key_exists()

O exemplo a seguir usa a array_key_exists()função para verificar se a chave 'admin'existe no $rolesarray:

<?php

$roles = [
	'admin' => 1,
	'approver' => 2,
	'editor' => 3,
	'subscriber' => 4
];

$result = array_key_exists('admin', $roles);

var_dump($result); // bool(true)Linguagem de código:  HTML, XML  ( xml )

O exemplo a seguir retorna falseporque o $rolesarray não possui a chave publisher:

<?php

$roles = [
	'admin' => 1,
	'approver' => 2,
	'editor' => 3,
	'subscriber' => 4
];

$result = array_key_exists('publisher', $roles);

var_dump($result); // bool(false)Linguagem de código:  HTML, XML  ( xml )

PHP array_key_exists() vs isset()

Se o valor do elemento da matriz não for null, ambos array_key_exists()e isset()retornarão truese a chave existir em uma matriz e falsese não existir. Por exemplo:

<?php

$roles = [
	'admin' => 1,
	'approver' => 2,
	'editor' => 3,
	'subscriber' => 4
];

var_dump(isset($roles['approver']));  // bool(true)
var_dump(array_key_exists('approver', $roles)); // bool(true)Linguagem de código:  HTML, XML  ( xml )

O exemplo a seguir retorna falseporque a userchave não existe na $rolesmatriz:

<?php

$roles = [
	'admin' => 1,
	'approver' => 2,
	'editor' => 3,
	'subscriber' => 4
];

var_dump(isset($roles['user']));  // bool(false)
var_dump(array_key_exists('user', $roles)); // bool(false)Linguagem de código:  HTML, XML  ( xml )

No entanto, se o valor de uma chave for null, isset()retornará falseenquanto a array_key_exists()função retornará true. Por exemplo:

<?php

$post = [
	'title' => 'PHP array_key_exists',
	'thumbnail' => null
];

var_dump(array_key_exists('thumbnail', $post)); // bool(true)
var_dump(isset($post['thumbnail'])); // bool(false)Linguagem de código:  HTML, XML  ( xml )

Resumo

  • Use a função PHP array_key_exists()para verificar se existe uma chave em um array.

Deixe um comentário

O seu endereço de email não será publicado. Campos obrigatórios marcados com *