php - isset() 和 array_key_exists() 有什么区别?

标签 php

以下两个函数调用如何比较:

isset($a['key'])

array_key_exists('key', $a)

最佳答案

array_key_exists肯定会告诉您数组中是否存在键,而 isset只有当键/变量存在并且不是null时才会返回true

$a = array('key1' => 'フーバー', 'key2' => null);

isset($a['key1']);             // true
array_key_exists('key1', $a);  // true

isset($a['key2']);             // false
array_key_exists('key2', $a);  // true

还有一个重要的区别:isset$a 不存在时不会报错,而 array_key_exists可以。

关于php - isset() 和 array_key_exists() 有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3210935/

相关文章:

php - 文件上传 php $_FILES 未定义索引错误

php - 将 PHP 脚本转换为 PDO

php - 如何使用 jQuery、PHP 和 MySQL 动态填充相关的选择菜单?

php - 小改动破坏了 mysql 查询

php - 将多个破折号替换为一个破折号

php合并查询左连接和if else语句

PHP 联系表单失败

php - 请求 URI 太大

php - 如何在 Joomla 的给定查询中选择用户名?

php mail() 不发送来自不同域的电子邮件