gpt4 book ai didi

php - 组合来自不同 MySQL 条目的数组并删除重复项

转载 作者:行者123 更新时间:2023-11-29 02:10:42 24 4
gpt4 key购买 nike

我有一个 MySQL 数据库,其中包含不同的行和一个包含数组的特定列,我希望将它们合并,然后删除重复项。例如,以下条目,row1 ([0] => 1) row2 ([0] => 2 [1] => 3)row3 ([0] => 1 [1] => 2 [2] => 3)。我需要像这样合并它们并删除重复项:

rows ([0] => 1 [1] => 2 [2] => 3)

我已按如下方式调用数据库中的查询,并且由于条目是按逗号分隔存储的 (1,2,3),所以我使用 explode 函数以上述格式获取它们。

$query2 = "SELECT * FROM samples_database WHERE order_id=$order_id AND micro_analysis<>'';";
$result2 = mysqli_query($conn, $query2);
$input = mysqli_fetch_array($result2);
$micro_analysis = $input['micro_analysis'];
$micro_analyses = explode(',', $micro_analysis);
print_r($result2);

从这里我似乎无法从每个单独的行中获取数组,它只给出第一行的数组结果,从而影响我的下游结果。我怎样才能实现这个目标?

最佳答案

将其存储为逗号分隔的字符串,然后 explode并制作它unique .然后您可以使用 array_filter删除任何 null 或空值

此外,您还错过了循环结果集以获取从查询返回的所有值。

这是更新后的片段,

$query2 = "SELECT * FROM samples_database WHERE order_id=$order_id AND micro_analysis<>'';";
$result2 = mysqli_query($conn, $query2);

$micro_analysis = '';
while($input = mysqli_fetch_array($result2))
{
$micro_analysis .= $input['micro_analysis'] . ',';
}

$micro_analysis_arr = array_filter(array_unique(explode(',', $micro_analysis)));

关于php - 组合来自不同 MySQL 条目的数组并删除重复项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53515267/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com