在PHP中比较两个字符串0
和'0'
时,我会有所不同。我可以做任何事情来使它们在if行动中得到平等比较吗?
谢谢!
答案 0 :(得分:11)
如果您使用以下方式进行比较:
if ('0' == 0) // if '0' is equal to 0
它应该返回true,因为值与被转换为数字的字符串进行比较。如果你这样做:
if ('0' === 0) // if '0' is identical to 0
它将返回false,因为它们也必须属于同一类型。
注意三重'='
答案 1 :(得分:1)
您还可以在比较之前强制他们的类型相同:
if((int)'0' === (int)0) {
// true
}
if((string)'0' === (string)0) {
// true
}