RowCount()= 0错误php mysql

时间:2011-09-08 23:44:29

标签: php mysql rowcount

echo "<h2 style='margin:0; padding:0;'>Recent Comments</h2>";

            if ($sth7->rowCount()) {
                while($row7 = $sth7->fetch(PDO::FETCH_ASSOC)) {
                echo "<div class='comment'>{$row7['usr']} said";
                }
            }
            else($sth7->rowCount() = 0)                                                          
            echo "User";

Can't use method return value in write context

为什么rowcount()= 0逻辑不起作用?

3 个答案:

答案 0 :(得分:3)

=是PHP中的赋值运算符。

你基本上是在尝试将0分配给$ sth7-&gt; rowCount()。

也许你的意思是$ sth7-&gt; rowCount()== 0?

另外,你真的不需要if else if。它可能只是一个if else:

if($sth7->rowCount()) {

} else {

}

rowCount()返回一个整数,除0之外的任何整数都将转换为true。

答案 1 :(得分:2)

尝试rowcount() == 0与0进行比较,您的代码(rowcount() = 0)会尝试分配0.此外,在比较时将常量放在左侧可能很有用:(0 == rowcount() )使这些错误更容易被发现。

答案 2 :(得分:0)

else没有任何逻辑,如果它(和任何其他的)没有评估为真,它就会被运行。

此外,=是赋值运算符 - 将其读作“变得等于”

$var = 1; // Var becomes equal to 1

==是一个相等运算符,它测试两个表达式是否相等

$var == 1 // Var is equal to 1

你可能想要

else if ($sth7->rowCount() == 0)                                                          
     echo "User";