if(something)vs if(something === true)

use*_*712 2 cakephp cakephp-1.2

我正在做一些关于cakephp的自学(版本1.26).
我有一个简单的HTML输入文本字段,如下所示:

<input type="text" name="data[testing][name]" id="data[testing][name]">
Run Code Online (Sandbox Code Playgroud)

根据数据库检查"输入"文本框字段中的值.
如果值与数据库中存储的数据匹配,则返回true.
这是代码:

{
  $t=$this->data;
  $result=$this->User->findByname($t['testing']['name']); 
  if($result){ //doing something;}
}
Run Code Online (Sandbox Code Playgroud)

当我通过一点改动修改上面的代码时,我遇到了一个问题,
但随后它无法工作:

 {
      $t=$this->data;
      $result=$this->User->findByname($t['testing']['name']); 
      if($result===true){ //doing something;}
    }
Run Code Online (Sandbox Code Playgroud)

有人可以帮忙吗?

Sar*_*raz 7

你使用严格的类型比较===而不是==,这意味着通过使条件失败$result实际上不等于true那里.试着看看$result变量中发生了什么:

var_dump($result);
Run Code Online (Sandbox Code Playgroud)

或者用(==)尝试这个条件:

if($result == true){ //doing something;}
Run Code Online (Sandbox Code Playgroud)

或者干脆:

if ($this->User->findByname($t['testing']['name'])){ //doing something;}
Run Code Online (Sandbox Code Playgroud)