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

Php 组合来自不同MySQL条目的数组并删除重复项,php,mysql,mysqli,Php,Mysql,Mysqli,我有一个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 =

我有一个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);
$query2=“从样本数据库中选择*,其中order\u id=$order\u id和micro\u analysis”“;”;
$result2=mysqli\u查询($conn,$query2);
$input=mysqli\u fetch\u数组($result2);
$micro_analysis=$input['micro_analysis'];
$micro_analysis=爆炸(“,”,$micro_analysis);
打印(结果2);

从这里看来,我无法从每一行中获取数组,它只给出第一行的数组结果,从而影响下游结果。如何实现此目标?

将其存储为逗号分隔的字符串,然后将其保存并生成。然后可以使用删除任何空值或空值

此外,您还没有循环结果集以获取查询返回的所有值

这是更新后的代码片段

$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)));
$query2=“从样本数据库中选择*,其中order\u id=$order\u id和micro\u analysis”“;”;
$result2=mysqli\u查询($conn,$query2);
$micro_分析=“”;
while($input=mysqli\u fetch\u数组($result2))
{
$micro_-analysis.=$input['micro_-analysis']。';
}
$micro_analysis_arr=array_filter(array_unique(explode(',',$micro_analysis));
$query2=“从样本数据库中选择*,其中order\u id=$order\u id和micro\u analysis”“;”;
$result2=mysqli\u查询($conn,$query2);
$micro_analysis=array();
while($input=mysqli\u fetch\u数组($result2))
{
$micro_analysis[]=$input['micro_analysis'];
}
$micro\u analysis\u arr=array\u unique($micro\u analysis);

希望这将帮助您

打开mysqli_fetch_assoc($result2),而loopBeautiful运行良好!你为什么这么做:$micro_analysis='';声明变量始终是一个很好的实践。如果将来添加一个外循环,
$micro\u analysis
将附加所有不需要的结果。
$query2 = "SELECT * FROM samples_database WHERE order_id=$order_id AND micro_analysis<>'';";
$result2 = mysqli_query($conn, $query2);

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

$micro_analysis_arr = array_unique($micro_analysis);