Why is true greater than 3 in PHP(为什么在 PHP 中 true 大于 3)
问题描述
我想知道为什么 PHP 中的以下语句返回 true?
I am wondering why following statement in PHP is returning true?
true>=4
例如这样的行会回显 1
echo true>=4;
谁能解释一下这背后的逻辑?
Can anyone explain me the logic behind this?
推荐答案
除了 Davids 的回答之外,我还想添加一些东西来增加深度.
In addition to Davids answer, I thought to add something to give a little more depth.
PHP 与其他编程语言不同,如果您不小心操作符/语法,您可能会陷入像您遇到的那种棘手的坑洞.
PHP unlike other programming languages, if your not careful with your operators/syntax you can fall into tricky pot holes like the one you experience.
正如大卫所说,
4 也是真(因为它非零),真等于真,所以它也大于或等于 true.
4 is also true (because it's non-zero), and true is equal to true, so it's also greater than or equal to true.
考虑到这一点真大于假.
真 = 1
假=0
举个例子:
$test = 1;
if ($test == true){
echo "This is true";
}else{
echo "This is false";
}
上面会输出
这是真的
但是如果你接受这个:
$test = 1;
if ($test === true){
echo "This is true";
}else{
echo "This is false";
}
上面会输出:
这是假的
添加的等号查找完全匹配,从而查找 integer 1 而不是 PHP 读取 1 为真.
The added equals sign, looks for an exact match, thus looking for the integer 1 instead of PHP reading 1 as true.
我知道这有点离题,但只是想解释一下 PHP 包含的一些坑.
希望对您有所帮助
回答你的问题:
回声真>=4;
您看到 1 作为输出的原因是因为 true/false 被解释为数字(见上文)
Reason you are seeing 1 as output, is because true/false is interpreted as numbers (see above)
无论你是在做 echo true>=4 还是只是 echo true; php 都将 true 设为 1,将 false 设为 0
Regardless if your doing echo true>=4 or just echo true; php puts true as 1 and false as 0
这篇关于为什么在 PHP 中 true 大于 3的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:为什么在 PHP 中 true 大于 3
基础教程推荐
- PHP PDO MySQL 查询 LIKE ->多个关键词 2021-01-01
- 学说 dbal querybuilder 作为准备好的语句 2022-01-01
- 有什么方法可以用编码 UTF-8 而不是 Unicode 返回 PHP`json_encode`? 2021-01-01
- 如何在 Laravel 中使用 React Router? 2022-01-01
- 在PHP中根据W3C规范Unicode 2022-01-01
- YouTube API v3 点赞视频,但计数器不增加 2022-01-01
- PHP 类:全局变量作为类中的属性 2021-01-01
- 如何在 Laravel 5.3 注册中添加动态下拉列表列? 2021-01-01
- Cron Jobs 调用带有变量的 PHP 脚本 2022-01-01
- 如何替换eregi() 2022-01-01
