php - php sql 得到错误的数组

标签 php mysql sql mysqli

我有一个像这样的名为 user 的表

id | user
 1 | test
 2 | test1

我有一个这样的查询:

$arr = array(0 => 1 , 1=> 2);
$sql = "SELECT user 
    FROM user 
    WHERE id IN (".implode(',',$arr).") 
    ORDER BY id";
$gg = mysqli_query($conn, $sql);
if(!$gg) {
    echo mysqli_error($conn);
} else {
    while ($row = mysqli_fetch_array($gg)) {
        print_r($row[0]);
    }
}

输出始终显示为 testtest1 但我希望它像数组一样 ([0] => 测试,[1] => 测试1) 甚至 test,test1 也可以,但它也应该在循环外工作。感谢帮助。

最佳答案

创建一个数组,然后打印该数组。 (和/或对数组做任何你想做的事情)

例如:

$arr = array(0 => 1 , 1=> 2);
$sql = "select user from user where id IN (".implode(',',$arr).") ORDER by id";
$gg = mysqli_query($conn, $sql);
$arrayOfResults = array();

if(!$gg){
    echo mysqli_error($conn);
}
else {
    while ($row = mysqli_fetch_array($gg))
    {
        array_push($arrayOfResults, $row[0]);
    }

    print_r($arrayOfResults);
}

关于php - php sql 得到错误的数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52446073/

相关文章:

PHP棋盘无法将图像放入棋盘内

php - Codeception RuntimeException 调用未定义的方法 FunctionalTester::amOnPage

php - phpunit目录错误?

mysql - 将sql查询转换为xml格式

mysql - join sql查询中where和and子句的区别

php - PHP 中显示零字节文件的消息

mysql - 设置mysql用户名和密码

mysql - 尝试创建一个带有参数并使用 if 语句的存储过程

sql - 使用附加列在配置单元中创建表

sql - 由于存在不相关字段而导致的交叉表拆分结果