代码之家  ›  专栏  ›  技术社区  ›  Chad

php/Laravel-无论条件表达式的值是多少,都会达到代码路径

  •  1
  • Chad  · 技术社区  · 7 年前

    我创建了一个名为 UuidHelper 函数名为 IsValidUuid

    public static function IsValidUuid($uuid) : bool {
        ...
    }
    

    我在一个流浪家庭的盒子上测试我的代码。

    $isValid = \UuidHelper::IsValidUuid($employee_uuid);
    
    if ($isValid)
        dd($isValid);
    

    这个 dd() 在这里工作,回来 true if() 只有 我正在做的改变)像这样:

    if (!$isValid)
        dd($isValid);
    

    这个 dd() 现在又回来了 false . 为什么 $isValid 当我否定 声明?为什么 dd() 在两种情况下都运行?不应访问此代码路径。

    为了好玩,我还尝试了以下操作,而不是NOT操作符:

    if ($isValid == false)
    

    同样的结果。

    谢谢你的帮助

    1 回复  |  直到 7 年前
        1
  •  1
  •   Eric Ciminelli    7 年前