他们如何返回相同的结果?

时间:2016-05-25 18:59:00

标签: php mysqli

此处,$user_id是单引号:

$select = $conn->query("SELECT firstname,lastname FROM users WHERE user_id = '$user_id'");
$row = $select->fetch_assoc();
    print_r($row);

此处$user_id不是单引号

$select = $conn->query("SELECT firstname,lastname FROM users WHERE user_id = $user_id");
$row = $select->fetch_assoc();
    print_r($row);

如果$user_id = 1'1' == 1?两者都返回$user_id = 1的关联数组。

1 个答案:

答案 0 :(得分:0)

对于您的用例,是的,'1' == 1

From the docs

  

要在数字上下文中将字符串转换为数字值,通常不需要执行任何操作,除了使用字符串值,就像它是一个数字一样:

mysql> SELECT 1+'1';
       -> 2