RowCount () = 0 ошибка php mysql - PullRequest
       35

RowCount () = 0 ошибка php mysql

0 голосов
/ 09 сентября 2011
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 ]

3 голосов
/ 09 сентября 2011

= это оператор присваивания в PHP.

Вы пытаетесь присвоить 0 для $ sth7-> rowCount ().

Возможно, вы имеете в виду $ sth7-> rowCount ()== 0?

Кроме того, вам действительно не нужно, если еще, если.Это может быть просто if else:

if($sth7->rowCount()) {

} else {

}

rowCount () возвращает целое число, и любое целое число, кроме 0, приведёт к true.

2 голосов
/ 09 сентября 2011

Попробуйте rowcount() == 0 сравнить с 0, ваш код (rowcount() = 0) пытается присвоить 0. Кроме того, может быть полезно поместить константу в левую часть при сравнении: (0 == rowcount()), чтобы упростить такие ошибкиобнаружить.

0 голосов
/ 09 сентября 2011

else не принимает никакой логики, он просто запускается, если он ассоциирован, если (и любые другие) не оценивал true.

Кроме того, = является оператором присваивания - читайте его как«становится равным»

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

== - оператор равенства, он проверяет, равны ли два выражения

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

Возможно, вы хотите

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