Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/278.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
用while循环填充php数组?_Php_Arrays_Sqlite_Loops - Fatal编程技术网

用while循环填充php数组?

用while循环填充php数组?,php,arrays,sqlite,loops,Php,Arrays,Sqlite,Loops,有没有办法将sqlite表输出到php数组 我目前正在尝试使用while循环,但它不能正确显示 $db = sqlite_open ("products.db", 0666, $error); $result=sqlite_query($db,"SELECT * from Books"); $products = array(); while($row=sqlite_fetch_array($result,SQLITE_ASSOC)) { $products = $row; } 我希望

有没有办法将sqlite表输出到php数组

我目前正在尝试使用while循环,但它不能正确显示

$db = sqlite_open ("products.db", 0666, $error);
$result=sqlite_query($db,"SELECT * from Books");
$products = array();
while($row=sqlite_fetch_array($result,SQLITE_ASSOC))
{
    $products = $row;
}
我希望将其存储到2D php数组中,就像:

$products = array(
    1 => array(
        'name' => '',
        'price' => ,
        'category' => '',
        'description' => ''
    ),
    2 => array(
        'name' => '',
        'price' => ,
        'category' => '',
        'description' => ''
    ),
    3 => array(
        'name' => '',
        'price' => ,
        'category' => '',
        'description' => ''
    )
);

你很接近。您只需要将每一行添加到数组中,而不是覆盖当前正在执行的数组变量

while($row=sqlite_fetch_array($result,SQLITE_ASSOC))
{
    $products[] = $row;
}

你很接近。您只需要将每一行添加到数组中,而不是覆盖当前正在执行的数组变量

while($row=sqlite_fetch_array($result,SQLITE_ASSOC))
{
    $products[] = $row;
}

使用数组分配,每次迭代,其覆盖,您也可以使用您的ID作为分配中的键
$products[$row['ID']]]
等。使用数组分配,每次迭代,其覆盖,您也可以使用您的ID作为分配中的键
$products[$row['ID']]
等。谢谢您解决了这个问题!谢谢你,这个问题已经解决了!