从PHP数组中删除重复的值

沃尔德·阿弗里迪(Waleed Afridi)

我有这个代码

<?php
$query1 = "SELECT users.id,
testtable_result.id as result_id,
testtable_result.user_id,
testtable_result.cad_id,
testtable_result.medication,
testtable_result.color,
testtable_category.category_id,
testtable_category.name
FROM users
INNER JOIN testtable_result
ON testtable_result.user_id=users.id
INNER JOIN testtable_category
ON testtable_result.cad_id=testtable_category.category_id
WHERE users.id = '{$userID}' AND color LIKE '%blue%';";
$result1 = query($query1);
confirm($result1);
if (row_count($result1) > 0) :
while($row1 = fetch_Array($result1)) {
  $medication = $row1['medication'];
  $data[] = $row1;
}
foreach ($data as $value) {
$categoryname = $value['name'];
$medication = $value['medication'];
$arrmaincatname = explode('(', rtrim($categoryname, ')'));
if($categoryname == "Saba"){
$datacat = $arrmaincatname[0];
$medicacat = $medication; ?>
In <?php echo $datacat; ?> category -- [<?php echo $medicacat ?>]
<?php
}} ?>

它显示了这样的结果
在Saba类别中[ProAirRespiClick®]在Saba类别中[Proventil®HFA]

我想删除所有重复的结果,并想像这样显示它。
在Saba类别中-[ProAirRespiClick®,Proventil®HFA]

塞那

您可以使用foreach对结果进行分组,然后使用秒显示所需的打印组。

<?php
$categories = [];
foreach ($data as $value) {
    $categoryname = $value['name'];
    $medication = $value['medication'];
    $arrmaincatname = explode('(', rtrim($categoryname, ')'));
    if ($categoryname == "Saba") {
        $categories[$arrmaincatname[0]][] = $medication;
    }
}
foreach ($categories as $categoryName => $category) {?>
    In <?php echo $categoryName; ?> category -- [<?php echo implode(', ', $category) ?>]
    <?php
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章