这是指我之前的一个问题:
array_unique vs array_flip – 这表示
array_flip(array_flip())
在处理简单的字符串和整数时比
array_unique()
要快得多.
我想知道的是为什么array_unique()
创建一个数组的副本,然后排除它,然后删除重复
提前致谢!
如果您以算法思考,删除重复的方式是通过列表,跟踪您找到的项目,并摆脱已经在“找到此”列表中的内容.完成此操作的一个简单方法是对列表进行排序.这样就可以有效地删除重复项.想想你,更别说电脑了;这些列表中的哪一个更容易从中删除重复项?
原文链接:https://www.f2er.com/php/131866.htmlapple banana cantaloupe apple durian apple banana cantaloupe
要么
apple apple apple banana banana cantaloupe cantaloupe durian
编辑:看了一下(找到this article)后,看起来像两个都完成这个工作,它们在功能上并不等同,或者至少不总是.说明以下几点:
> array_unique()对数值进行排序,如您所指出的那样,array_flip(array_flip())不会返回相同的数组 – 但这可能是需要的.>如果这些值是对象,那么您不能使它们成为键(对?),即flip方法不会在所有数组上使用,而排序方法可以正常工作,而不管值类型如何.