php if condition

  • 本文关键字:condition if php php
  • 更新时间 :
  • 英文 :


我找不到任何问题…这应该行得通吧?

function ConfirmedNumber()
{
$rs = mysql_query("CALL ConfirmedNumber('" , $_SESSION['UserID'] . "',@Active)");
    while ($row = mysql_fetch_assoc($rs))
    {
        if ($row['Active'] = 1)
        {
        return true;
        }
    }
return false;
}

假设存储过程返回一行,其中值为'1',那么我可以像这样调用函数,对吗?

if (ConfirmedNumber())
{
//do some stuff.
}

对我的评论进行扩展:

if ($row['Active'] = 1)必须是if ($row['Active'] == 1)才能正常工作。

如果你想避免在将来不小心这样做,你可以这样写你的If语句:

if (1 == $row['Active'])

这样,你就不会意外地使用=,因为PHP会抛出致命错误。您可以在PHP.net

阅读更多关于比较运算符的内容。

在下面评论完整的答案:

对存储过程的调用…line $rs = mysql_query("CALL ConfirmedNumber('"))。$ _SESSION("标识")。"@Active)");在最初的文章中使用逗号代替句号。

您在IF语句中忘记了操作符。改成这样:

if ($row['Active'] == 1)

或更短的

if ($row['Active'])

可以是这样的

    function ConfirmedNumber($id)
    {
    $rs = mysql_query("CALL ConfirmedNumber('" . $id . "',@Active)");
        while ($row = mysql_fetch_assoc($rs))
        {
            if ($row['Active'] == 1)
            {
            return true;
            }
        }
    return false;
    }
ConfirmedNumber($_SESSION['UserID']);

最新更新