以下是代码:
$count = 0;
$update = $db->query("UPDATE $table SET price = '$price' WHERE sku = '$sku'");
if ($update->affected_rows) {
$count++;
}
echo $count;
Run Code Online (Sandbox Code Playgroud)
执行上面的代码后,行得到在更新的db,但值的$count是0.根据我的假设,$ count的值应该是122,只是因为更新了122行.我不明白为什么.
当我使用下面的代码时,
if (!$update->affected_rows) {
$count++;
}
Run Code Online (Sandbox Code Playgroud)
该$count变212.
我无法理解这种行为.我希望有人解释上面的代码及其行为方式?
小智 5
试试下面的代码.
$update = $db->query("UPDATE $table SET price = '$price' WHERE sku = '$sku'");
if ($update) {
printf("Records Updated: %d\n", mysql_affected_rows());
}
Run Code Online (Sandbox Code Playgroud)
希望这可以帮助.