2

我有一个 foreach ,它根据 为每个项目创建一个 url $mainCat$subCat当然我知道由于某些项目属于同一类别,因此会有重复项。

有没有我可以只返回每个$mainCat&$subCat属性的一个 url?

    foreach ($detailsFunction as $main) 
    {
        $ld = array('listingId' => $main['listingId']);

        foreach($ld as $id)
        {
            $mainlisting = $main['listingId'];
            $mainCat     = strtolower($main['mainCat']);
            $subCatO     = strtolower($main['subCat']);
            $subCat      = str_replace(" ", "-", $subCatO);

            $structure = base_url().'listings/'.$mainCat.'/'.$subCat;

            $url[] = $structure;
        }

    }
        return $url;

        var_dump($url);
}
4

2 回答 2

1

如果我理解您的问题,您想生成一个没有重复值的数组吗?

您可以$structure$url添加之前测试是否存在:

if (!in_array($structure, $url)) $url[] = $structure;

array_unique在循环完成后使用:

$url = array_unique($url);
于 2012-11-22T19:55:51.883 回答
0

好吧,您可以使用 PHP array_unique 删除重复项

有关array_unique的更多信息

于 2012-11-22T19:57:42.913 回答