php - mysql/php - 在 while 语句中合并来自 mysql 输出的多个数组

标签 php mysql array-merge

我需要从我拥有的 mysql 数据库中合并许多数组。数组的数量可以变化。我正在将数据序列化到数据库中,并在输出时反序列化它。我感到困惑的地方是尝试使用 array_merge 但不确定如何正确地将数据放入其中。

比如我有

$sql_get_votes_data = "SELECT * FROM algo_users WHERE data LIKE '%$movie_id%'";
$result_get_votes_data = mysql_query($sql_get_votes_data);
$final_array = array();
while($row_get_votes_data = mysql_fetch_array($result_get_votes_data)) {
    $final_array[] = unserialize($row_get_votes_data['data']);
}

最终我需要能够像这样进行独特的合并。

array_unique(array_merge($final_array1,$final_array2), SORT_REGULAR);

但由于我必须将每个数组放入一个单独的变量中才能传递到 array_merge 中,所以我不确定如何从 mysql 调用中执行此操作。

任何帮助都会很棒。

最佳答案

为什么不在循环中合并每个新数组?

$mergedArray=array();
while($row_get_votes_data = mysql_fetch_array($result_get_votes_data)) {
    $final_array = unserialize($row_get_votes_data['data']);
    $mergedArray=array_merge($mergedArray,$final_array);
}
array_unique($mergedArray, SORT_REGULAR);

或者如果您需要跟踪您的个人阵列:

$mergedArray=array();
$i=0;
while($row_get_votes_data = mysql_fetch_array($result_get_votes_data)) {
    $final_array[$i] = unserialize($row_get_votes_data['data']);
    $mergedArray=array_merge($mergedArray,$final_array[$i]);
    $i++
}
array_unique($mergedArray, SORT_REGULAR);

编辑:我首先了解到您只想将所有数组合并为一个数组。上面编辑过的答案现在也删除了重复的条目,我现在明白你希望这样做。

关于php - mysql/php - 在 while 语句中合并来自 mysql 输出的多个数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27540804/

相关文章:

php - 可更改的自定义 JSON Ajax 循环

php - 如何使用正则表达式更新表值?

从未知数量的参数合并 PHP 数组

laravel-5 - Laravel 5 合并一个数组

php - 您使用什么 PHP 应用程序设计/设计模式?

php - 特殊条件的 SQL 查询不起作用

java - 如何发送整数和字符串作为 JsonObjectRequest 的参数 (Android)

mysql - 我如何 "mass edit"我的 mysql 数据库中的一个字段

mysql - 如何在连接 3 个表时进行搜索但排除其中一个表的结果?