若使用 isset() 测试一个被设置成 NULL 的变量,将返回 FALSE

<?php

$a = array ('test' => 1, 'hello' => NULL);

var_dump( isset ($a['test']) );            // TRUE
var_dump( isset ($a['foo']) );             // FALSE
var_dump( isset ($a['hello']) );           // FALSE

// 键 'hello' 的值等于 NULL,所以被认为是未置值的。
// 如果想检测 NULL 键值,可以试试下边的方法。 
var_dump( array_key_exists('hello', $a) ); // TRUE

?>

转载于:https://www.cnblogs.com/andydao/archive/2013/06/14/3135406.html

php isset缺陷 用array_key_exists相关推荐

  1. 深入理解PHP之isset和array_key_exists对比

    1.概述 经常使用isset判断变量或数组中的键是否存在, 但是数组中可以使用array_key_exists这个函数, 那么这两个谁最优呢? 官方文档对两者的定义 - 分类 描述 文档 isset ...

  2. 自学PHP教程之每天学一个函数(一):isset()

    词义理解 is+set :解释成中文就是,is==是否:set==设置.连起来读就是:是否设置? 那么这货返回的一定是一个布尔型.(false或者true) 函数概念: 我翻了翻各种资料,大家对这个函 ...

  3. drupal cve-2018-7600 远程代码执行漏洞 简介

    漏洞分析 Drupal 在 3 月 28 日爆出一个远程代码执行漏洞,CVE 编号 CVE-2018-7600,通过对比官方的补丁,可以得知是请求中存在 # 开头的参数.Drupal Render A ...

  4. php如何检测数组是否存在,php – 如何检查数组元素是否存在?

    您可以使用语言构造 isset或函数 array_key_exists. isset应该有点快(因为它不是一个函数),但如果元素存在并且值为NULL,则返回false. 例如,考虑这个数组: $a = ...

  5. Yii2 mongodb 扩展的where的条件增加大于 小于号

    1. mongodb的where中有比較丰富的 条件.例如以下: static $builders = ['NOT' => 'buildNotCondition','AND' => 'bu ...

  6. PHP为什么empty可以访问不存在的索引

    开始之前, 先抛出问题: $arr = []; echo 'empty: ', PHP_EOL; var_dump(empty($arr['1'])); echo 'is_array: ', PHP_ ...

  7. 如何检查PHP数组是关联数组还是顺序数组?

    PHP将所有数组视为关联数组,因此没有任何内置函数. 谁能推荐一种相当有效的方法来检查数组是否仅包含数字键? 基本上,我希望能够区分以下两者: $sequentialArray = array('ap ...

  8. php面试题目(中等水平)

    1:写php有几年了?php名字是什么意思?personal home page 2:熟悉javascript吗? ajax(Asynchronous javascript and XML)是什么东西 ...

  9. PHP in_array 函数,解决大量数据判断in_array的效率慢,in_array 效率优化

    用到函数: array_flip() 将数组键名与值对调,而且还会帮助自动去重 array_column()  返回输入数组中某个单一列的值.可用于二维数组转一维数组 isset() 用来判断变量是否 ...

最新文章

  1. 这届清华新生太难了吧!C++作业难到上热搜,特奖都说做不了,大厂猎头已密切关注...
  2. 系统底部返回遮挡_一加7 Pro这个新功能让大家久等了:屏幕两侧一滑就可返回...
  3. C++ 使用A*算法解决八数码问题
  4. 如何使用intellij搭建spark开发环境(下)
  5. 爬取亚马逊评论_如何利用插件抓取亚马逊评论和关键词?
  6. coreldraw x4如何出血_告诉你如何把cdr转换成适合印刷的pdf
  7. 架构师到底是啥玩意?
  8. 阶段3 1.Mybatis_06.使用Mybatis完成DAO层的开发_8 properties标签的使用及细节
  9. oracle11g视频
  10. 银行联行号cnasp查询(二)
  11. RGB颜色对照表(数值+英文,Markdown可用)
  12. 【玩转ElasticSearch】横向对比ElasticSearch与Sphinx
  13. 100个软硬件都要懂的示波器基础知识
  14. 华为P30虽好但太贵?2699元起的荣耀20系列来了
  15. 老男孩python培训课件
  16. 光波长与RGB数值的转换
  17. PROFINET基础知识介绍
  18. 三个人拍顺序c语言,最简单的c程拍序设计.ppt
  19. 【180720】打字游戏源码
  20. Java手机号码归属地查询

热门文章

  1. c四舍五入取整函数_学会这8个Excel函数,工作瞬间好轻松!
  2. opencv镜像_DX200操作要领—PAM与镜像平移变换(三十八)
  3. CVPR 2020 运行12-in-1遇到的问题及解决办法(持续更新中)
  4. 2014年12月福建省高等学校计算机应用水平等级考试考试大纲,福建省高等学校计算机应用水平等级考试...
  5. springboot shiro和freemarker集成之权限控制完全参考手册(跳过认证,登录由三方验证,全网首发)...
  6. Pentest Box -windows平台的linux bash,集成了很多测试工具
  7. $_POST[] name
  8. javascript运行机制之执行顺序详解
  9. UEditor使用报错Cannot set property 'innerHTML' of undefined
  10. 【leetcode❤python】Move Zeroes