我被告知,好的开发人员可以发现/利用NullFalse0以及所有其他好的"无"实体之间的差异

推荐答案

它是特定于语言的,但在PHP中:

100表示"nothing".变量尚未初始化.

100的意思是"not true in a boolean context".用于明确表示您正在处理逻辑问题.

100101.和上面的睡觉没有关系,用来做数学的.

现在,棘手的是,在像PHP这样的动态语言中,all of them have a value in a boolean contextFalse.

如果你用==来测试它,它就是在测试布尔值,所以你会得到等式.如果你用===测试它,它会测试类型,你会得到不等式.

那么,它们为什么有用呢?

看看strrpos()函数.如果未找到任何内容,则返回False;如果在字符串开头找到了内容,则返回0!

<?php
// pitfall :
if (strrpos("Hello World", "Hello")) { 
    // never exectuted
}

// smart move :
if (strrpos("Hello World", "Hello") !== False) {
    // that works !
}
?>

当然,如果你与各州打交道:

您希望在DebugMode = False(设置为OFF)、DebugMode = True(设置为ON)和DebugMode = Null(根本不设置,将导致硬调试;-)之间进行区分.

Php相关问答推荐

为什么PHP输出\n而不是实际创建一个新元素?

使用WooCommerce本机产品短码时不考虑价格筛选(_SHORT CODE)

从WooCommerce Checkout Country Select2下拉列表中重新排序国家/地区

未在moodle上运行的计划任务

在函数内部获取一致的单选按钮值以更新WordPress用户数据

WooCommerce/WordPress:简单的产品属性显示

如何将WooCommerce产品属性术语名称显示为链接术语?

在PHP中读取JSON

如何在php网站代码中清理浏览器缓存

首先在WooCommerce我的帐户订单页面中移动操作按钮

从两个日期创建日期范围,然后为范围中的每个日期复制子数组

PHP:为什么递归需要这么长时间

用GUZLE模拟Read_Timeout

使用 php Carbon 获取两个日期之间的随机日期和时间

如何用十进制和字母数字减go 和添加 id

使用产品自定义字段作为 WooCommerce 中特定用户角色的折扣百分比

使用动态地址和动态文件创建zip文件并获取zip文件链接

注册命名空间后如何获取xml node 值?

如何在不解压缩/重新压缩的情况下连接(连接)两个缩小的值

自定义错误页面不适用于 Apache 和 nginx 设置的 .htaccess