Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/14.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
Php 数组\u push mysqli$行返回相同的数据_Php_Arrays_Mysqli - Fatal编程技术网

Php 数组\u push mysqli$行返回相同的数据

Php 数组\u push mysqli$行返回相同的数据,php,arrays,mysqli,Php,Arrays,Mysqli,我有一个数据库返回数组 $row['id']=1, $row['col1']='col1', $row['col2']=col2 当我将每个$row推送到$result时 array_push($result, $row); $行被覆盖b/c它们共享相同的键。我想不起来了。但是如果它被覆盖,当I var_dump($result)时,它应该只输出一个集合,而不是输出具有相同数据集合的多行,请帮助。替换此:array\u push($result,$row) 为此: foreach($ro

我有一个数据库返回数组

$row['id']=1, $row['col1']='col1', $row['col2']=col2 
当我将每个$row推送到$result时

array_push($result, $row); 

$行被覆盖b/c它们共享相同的键。我想不起来了。但是如果它被覆盖,当I var_dump($result)时,它应该只输出一个集合,而不是输出具有相同数据集合的多行,请帮助。

替换此:
array\u push($result,$row)
为此:

foreach($row AS $current_row)
{
   array_push($result, $current_row);
}

我不太明白。
如果要在
$result
中添加
$row
,可以使用
array\u merge()
函数,如下所示:

$result = array_merge($result, $row);

数组\推送将元素添加到2维或更多维数组中。在使用它之前,必须定义一个数组。使用以下命令:

$result = array();
while ($row = $stmt->fetch())
{
   array_push($result, $row);
}

正如上面的代码所示,您正在将整个$row数组推送到$result数组中……您读过手册了吗
array_push()将数组视为堆栈,并将传递的变量推送到数组的末尾。数组的长度随着所推的变量数量的增加而增加。
这也可以,但是@milk允许更好的数组结构。谢谢你的归来和投票结果。:)祝你好运