【问题标题】:PHP logical operator [duplicate]PHP逻辑运算符[重复]
【发布时间】:2019-04-21 16:50:12
【问题描述】:

isset()被执行时会执行下面的检查$_SESSION['mat'] == "1"还是因为第一次为假而直接跳过第二次验证?

我有什么疑问吗?

if(isset($_SESSION['mat']) and $_SESSION['mat']=="1"){}

【问题讨论】:

    标签: php session if-statement logical-operators


    【解决方案1】:

    如果您的 if 语句的第一部分已经返回 false,则不会计算第二部分。你的 if 语句看起来不错,不应该抛出任何索引越界错误。

    【讨论】:

      【解决方案2】:

      执行 isset 时执行以下检查 ($ _ SESSION ['mat'] == "1") 或直接跳过第二次验证,因为它是第一次为假。

      isset() 将检查是否设置了变量,否则将返回 false。 if() 语句中的所有代码都将被执行,因此在您的情况下,如果未设置 $_SESSION 数组变量,则第二个控件,在您的情况下为 and(也可以使用 && 表示)将被跳过。

      【讨论】:

        猜你喜欢
        • 2011-03-14
        • 2020-10-02
        • 1970-01-01
        • 1970-01-01
        • 2011-09-18
        • 2013-07-16
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多