1
if(0 == ('Pictures'))
{
  echo 'true';
}

为什么它给了我“真实”?

4

3 回答 3

3

您的字符串将被评估为整数,因此变为 0,使用此 :0 === 'Pictures'验证身份(相同的值和相同的类型)

于 2010-06-03T10:05:06.493 回答
2

检查PHP 类型比较表以了解比较运算符在 PHP 中的行为方式。

在您的情况下,“图片”变为“0”,因此 0 = 0。

让我们检查以下示例:

echo (int)'Pictures'; // 0 => 'Picture' as int
echo 0 == 'Pictures'; // 1 => true, 0 = 0
于 2010-06-03T10:14:16.207 回答
0

采用:

if (0 === 'Pictures')
{
  echo 'true';
}

===is 严格类型运算符,它不仅检查值,还检查类型。

快速测试:

if(0 == 'Pictures')
{
  echo 'true';
}
else
{
  echo 'false';
}

输出true但:

if(0 === 'Pictures')
{
  echo 'true';
}
else
{
  echo 'false';
}

输出false

于 2010-06-03T10:09:26.887 回答