レポートと場所の間には1対多の関係があります。私の目標は、レポートのリストを、表示されているすべての場所を含むレポートをできるだけ少なくすることです。
番号のリストに単純化すると、次のようになります。キーはレポートで、配列は場所のリストです。
{
1:[1,2],
2:[1],
3:[2,3],
4:[1,3,4]
}
理想的な解決策は、レポート1 or 3
とを選択すること4
です。どちらか1
または3
が選択される可能性があります。これは、両方に場所が含まれ、レポートで2
場所が重複しているためです。レポートはLocationを持つ唯一のレポートであるため、選択する必要があります。1
4
4
4
効率は大きな問題ではありません。PHPを使用してリストを絞り込むための最良の方法はどのようになっていますか?