1

为什么要使用 php

'00' == '0000'

表达式是true

它在手册的某个地方有解释吗?

注意

这:

如果将数字与字符串进行比较或比较涉及数字字符串,则每个字符串都将转换为数字并以数字方式执行比较

不适合这种情况,两个操作数都是字符串。

4

5 回答 5

4

“如果您将数字与字符串进行比较,或者比较涉及数字字符串,则每个字符串都将转换为数字并以数字方式进行比较。” (PHP手册

于 2013-01-05T23:00:40.300 回答
3

当然

== compares values and neglects type
=== compares values and types

就这个:

http://php.net/manual/en/language.operators.comparison.php

*更新:

在此 URL 中阅读此部分:

http://php.net/manual/en/function.intval.php

字符串很可能返回 0,尽管这取决于字符串最左边的字符。整数转换的通用规则适用。

于 2013-01-05T22:58:47.693 回答
2

因为当你比较这个字符串时,它们两边都变成零,所以 0 == 0 是真的,试着在'00' === '0000' 这里使用是链接

于 2013-01-05T22:59:48.370 回答
1

只需阅读:

如果 [...] 比较涉及数字字符串,则每个字符串都将转换为数字并以数字方式执行比较

我删除了可能阻碍你的部分。

于 2013-01-05T23:02:25.583 回答
0

记住这一点也很好

如果将数字与字符串进行比较或比较涉及数字字符串,则每个字符串都将转换为数字并以数字方式执行比较。这些规则也适用于 switch 语句。当比较是 === 或 !== 时不会发生类型转换,因为这涉及比较类型和值。在此处输入链接描述

但是大家说的都是对的!

于 2013-01-05T23:03:19.840 回答