Fungsi array_key_exists() di PHP digunakan untuk memeriksa keberadaan kunci atau key atau index pada sebuah array, apakah index tersebut ada atau tidak. Fungsi ini dapat digunakan untuk menangani error PHP apabila index yang dipanggil tidak ada dan dialihkan ke respon yang lain.
Berikut ini adalah deskripsi penggunaan array_key_exists()
.
array_key_exists(string|int $key, array $array): bool
Code language: PHP (php)
Fungsi array_key_exists()
memiliki dua parameter.
$key
adalah kunci atau index yang ingin dicari.$array
adalah data array yang ingin diproses.
Jika key atau kunci atau index yang di cari ada maka array_key_exists() di PHP akan mengembalikan nilai TRUE
, selain itu akan FALSE
.
array_key_exists()
pada multidimensional array hanya akan bekerja pada root atau baris pertama, dan tidak dapat menemukan key array bersarang.Contoh penggunaan fungsi array_key_exists() di PHP
Langsung saja kita praktekan bagaimana cara menggunakan fungsi array_key_exists() di PHP untuk mencari key pada sebuah array, apakah ada atau tidak.
Baca juga: Tutorial Array Di PHP
Sebelum itu, kenapa kita memeriksa keberadaan sebuah index didalam array? index atau key di array harus bersifat unik, tidak bisa sama antara key satu dengan yang lainnya, maka dari itu jika anda mengambil nilai pada sebuah array berdasarkan key array dan ternyata key yang anda panggil tidak ada, maka PHP akan mengambalikan pesan array, contohnya seperti dibawah ini.
<?php
$array = [
'url' => 'Bahasaweb.com',
'title' => 'Belajar PHP sangat mudah'
];
echo $array['tagline'];
Code language: HTML, XML (xml)
Contoh pesan error yang akan ditampilkan seperti gambar dibawah ini.
Error terjadi karena key tagline tidak ada didalam variabel $array
, itulah mengapa memeriksa keberadaan key di array sangat penting.
Berikut ini adalah contoh penggunaan array_key_exists() di PHP yang bisa kita gunakan untuk menangkal pesan error tersebut.
<?php
$array = [
'url' => 'Bahasaweb.com',
'title' => 'Belajar PHP sangat mudah'
];
$result = array_key_exists('url', $array);
var_dump($result); // Output: bool(true)
Code language: HTML, XML (xml)
Karena index url ada didalam $array
maka fungsi array_key_exists()
akan mengembalikan nilai TRUE
.
Dan sebaliknya, jika index atau key yang dicari tidak ada, maka fungsi array_key_exists()
akan mengembalikan nilai FALSE
, seperti pada contoh dibawah ini.
<?php
$array = [
'url' => 'Bahasaweb.com',
'title' => 'Belajar PHP sangat mudah'
];
$result = array_key_exists('tagline', $array);
var_dump($result); // Output: bool(false)
Code language: HTML, XML (xml)
Lalu dari kedua kode diatas, bagaimana cara menangani pesan error yang terjadi jika tersedia key yang di cari pada sebuah tidak ada? Anda dapat membuat kondisi menggunakan IF ELSE
, contoh seperti kode dibawah ini.
<?php
$array = [
'url' => 'Bahasaweb.com',
'title' => 'Belajar PHP sangat mudah'
];
if (array_key_exists('tagline', $array)) {
echo 'Tagline ditemukan';
} else {
echo 'Tagline tidak ditemukan';
}
// Output: Tagline tidak ditemukan
Code language: HTML, XML (xml)
Sebetulnya ada fungsi lain di PHP yang bisa digunakan untuk memastikan sebuah key di array ada atau tidak, yaitu menggunakan fungsi isset()
, namun fungsi isset()
di PHP ini tidak akan mengembalikan nilai TRUE
jika nilai yang ada pada sebuah array bernilai NULL
.
Baca juga: Tutorial array_keys() di PHP
Sebagai contoh kode dibawah ini.
<?php
$array = [
'hari' => 'Rabu',
'bulan' => 'Maret',
'tahun' => NULL,
];
var_dump( isset($array['tahun']) ); // Output: bool(false)
var_dump( array_key_exists('tahun', $array) ); // Output: bool(true)
Code language: HTML, XML (xml)
Pada kode diatas, fungsi array_key_exists() di PHP akan mengembalikan nilai TRUE
karena index tahun ada pada $array
, sedangkan fungsi isset()
akan mengembalikan nilai FALSE
meskipun index tahun ada di $array
namun nilainya NULL
, itulah perbedaan kedua fungsi tersebut.
Demikian tutorial mengenai fungsi array_key_exists() di PHP, jika ada pertanyaan anda bisa tinggalkan komentar dibawah ini.