Я выводил список покупок, и я хочу автоматически выделить наличие дубликатов заказов.Выделить повторяющиеся значения в многомерном массиве
Вот как выглядит массив. Первые два заказа - это дубликаты заказов по ошибке. Вы заметите, что порядок заказа для каждого отличается, тогда как адрес электронной почты и идентификатор пользователя остаются прежними. Таким образом, дублирование должно соответствовать по электронной почте и/или идентификатору пользователя, но не по заказу.
array
0 =>
array
'orderid' => string '2009091008261662'
'email' => string '[email protected]'
'userid' => string '53'
array
1 =>
array
'orderid' => string '2009091008261048'
'email' => string '[email protected]'
'userid' => string '53'
array
2 =>
array
'orderid' => string '2009091008262025'
'email' => string '[email protected]'
'userid' => string '103'
array
3 =>
array
'orderid' => string '2009091008272082'
'email' => string '[email protected]'
'userid' => string '392'
Как я могу искать дубликаты заказов от одного и того же человека в заданном массиве на PHP?
Я хотел бы выход выше примерно так:
(ITS делают вид в таблице)
2009091008261662 - [email protected] - 53
2009091008261048 - Джон @ пример .com - 53
2009091008262025 - [email protected] - 103
2009091008272082 - [email protected] - 392
... так что в основном просто выделите два (или более) дубликата.
-1 для O (n^2), когда это может быть только O (2n) -> O (n). Кроме того, вы можете просто вернуть true, как только $ count не будет 0 вместо итерации всего массива. –
Я сказал, что это просто неэффективно. Остерегайтесь преждевременной оптимизации. И да, вы можете вернуть true, как только $ count> 1. Но не 0, так как всегда будет 1 матч. – Craig