在mysqli查询中使用COUNT时的最佳比较运算符

时间:2012-04-04 03:26:03

标签: php mysql comparison-operators

执行mysqli查询并计算结果,是否有首选的比较运算符&字符串enquoting使用?

例如

$query = mysqli_query($connect, "SELECT COUNT(`user_id`) FROM `users` WHERE `user_color` = '{$color}'");
$result = mysqli_fetch_assoc($query);
if ($result['COUNT(`user_id`)'] != 0){
 -- then do something....

我的问题是,使用的含义是什么:

if ($result['COUNT(`user_id`)'] != '0'){

if ($result['COUNT(`user_id`)'] != 0){

4 个答案:

答案 0 :(得分:1)

我的偏好是:

... "SELECT COUNT(`user_id`) as user_count ..." ...

if ($result['user_count'])
PHP中的{p> 0'0'都是false,所以这样做非常简洁。

答案 1 :(得分:0)

两者都相同,php负责字符串和数字。

php解释器的内部功能:如果您将数字与字符串进行比较或者比较涉及数字字符串,则每个字符串都会转换为数字,并且数字执行比较。

答案 2 :(得分:0)

查看:Comparison Operators

<?php

0=='0'; // true
0==='0' // false

0!='0'; // false
0!=='0'; // true

?>

在您的情况下无关紧要,因为您只使用一个=

答案 3 :(得分:0)

使用mysqli_fetch_row而不是mysqli_fetch_assoc。

$result = mysqli_fetch_row($query);
if ($result[0] != 0){
    // your code
}