为什么字符串日期等于0

时间:2016-06-01 08:56:09

标签: php

我只想知道下面的代码!我之前从未见过和见过。为什么字符串date等于0?有没有任何文件...

<?php
$p = "date";
$n = 0;
$m = 1;
var_dump($p == $n);//true
var_dump($p == $m);//false
var_dump($n == $m);//false
?>

3 个答案:

答案 0 :(得分:0)

是的,您将string与int进行比较,因此string首先转换为int。来自&#34; date&#34; string是0

答案 1 :(得分:0)

这就是它的工作原理:

参考:Manual [见表]

  

与== 的比较松散   "PHP" == 0true   "PHP" == 1false

     

严格比较===
  "PHP" === 0false   "PHP" === 1false

"date"

的情况也是如此

答案 2 :(得分:0)

见这个

您使用过==

0是int,因此在这种情况下,它会将'date'转换为int。哪个不可解析为一个,并将成为0。这就是你得到true的原因。试试=== opertor