在php中对数组的操作,一定要很小心的,不然就会出现致命的错误。比如,在输出数组中的指定key的数据时,如果指定的key不存在,那么PHP就会抛出一个致命的错误,终止程序的运行。这篇博文就说一说,php中如何去判断数组中指定的键(key)是否存在。

php array_key_exists() 函数

array_key_exists():判断数据中是否存在指定的键名,存在返回 true ,不存在返回 false;

语法:

array_key_exists(key,array)

参数:

key:必须,要检查的键名

array:必须,被搜索的数组

例:PHP 检查数组中指定的键名是否存在

示例代码:

<?php
$arr = array(
    'a' => 'mochu',
    'b' => 'http://www.feiniaomy.com',
    'c' => 'zblog',
    'd' => 'cms'
);
var_dump(array_key_exists('a',$arr));
var_dump(array_key_exists('f',$arr));
?>

输出结果: bool(true)      bool(false)

注意:var_dump() 函数打印出的结果,都带有其结果的数据类型,比如上面输出的 true 或 false 都属于 bool 类型。

PHP isset()函数

isset():检测一个变量是否已设置,并且非null,如果成立则返回 true 否则返回 false;

语法:

isset(var)

参数:

var : 要检查的变量,

例:PHP检查数据中是否存在某个键(key)

示列代码:

QQ截图20190626225607.jpg

<?php
$arr = array(
    'a' => '你好',
    'b' => '飞鸟慕鱼博客',
    'c' => 'zblog',
    'd' => '博客系统'
);
var_dump(isset($arr['f']));
var_dump(isset($arr['a']));
?>

返回结果:bool(false)    bool(true)