PHP - array_key_exists
Třída
Metoda - array_key_exists
(PHP 4 >= 4.0.7, PHP 5, PHP 7)
Funkce zjišťuje, jestli pole obsahuje zadaný klíč.
Kvůli zpětné kompatibilitě, funkce vrací true
i v
případě, když je klíč definován jako vlastnost v předaném objektu. Toto
ale není správné využití funkce, je potřebné, aby byl druhý parametr
pole (ne objekt). Pro zjištění přítomnosti vlastnosti objektu slouží
funkce property_exists()
.
Procedurální
- function array_key_exists (mixed $key, array $array) : bool
Parametry
Název | Datový typ | Výchozí hodnota | Popis |
---|---|---|---|
$key | mixed | Hledaný klíč. | |
$array | array | Pole, v kterém hledáme výskyt klíče. |
Návratové hodnoty
Vrací: bool
Když pole obsahuje zadaný klíč, funkce vrací true
, jinak
vrací false
.
Příklady
V první ukázce máme asociativní pole a hledáme, jestli obsahuje zadaný klíč.
<?php
$auta = array("Mercedes"=>"E", "Audi"=>"A6", "BMW"=>"5");
// Protože v poli neexistuje klíč "Porsche", funkce vrací false.
$klicPorsche = "Porsche";
if (array_key_exists($klicPorsche, $auta))
echo "Klíč $klicPorsche existuje! <br>";
else
echo "Klíč $klicPorsche neexistuje! <br>";
// Pole obsahuje klíč "BMW", funkce vrací true.
$klicBMW = "BMW";
if (array_key_exists($klicBMW, $auta))
echo "Klíč $klicBMW existuje! <br>";
else
echo "Klíč $klicBMW neexistuje! <br>";
Když máme číselně indexové pole, tak jako hledaný klíč můžeme použít číselnou hodnotu.
<?php
$auta = array("Mercedes", "Audi", "BMW");
// V poli se nachází klíč s hodnotou (indexem) 1, funkce proto vrací true.
$klic1 = 1;
if (array_key_exists($klic1, $auta))
echo "Klíč $klic1 existuje! <br>";
else
echo "Klíč $klic1 neexistuje! <br>";
// Pole obsahuje 3 prvky, klíč s hodnotou (indexem) 7 neexistuje, funkce vrací false.
$klic2 = 7;
if (array_key_exists($klic2, $auta))
echo "Klíč $klic2 existuje! <br>";
else
echo "Klíč $klic2 neexistuje! <br>";
Související manuály
- function array_keys (array $array, mixed $search_value = null, bool $strict = false) : array
- function in_array (mixed $needle, array $haystack, bool $strict = false) : bool
- function isset (mixed $var, mixed $...) : bool