执行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){
答案 0 :(得分:1)
我的偏好是:
... "SELECT COUNT(`user_id`) as user_count ..." ...
if ($result['user_count'])
PHP中的{p> 0
和'0'
都是false
,所以这样做非常简洁。
答案 1 :(得分:0)
两者都相同,php负责字符串和数字。
php解释器的内部功能:如果您将数字与字符串进行比较或者比较涉及数字字符串,则每个字符串都会转换为数字,并且数字执行比较。
答案 2 :(得分:0)
<?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
}