我有一个数组$ near_by。该结构是这样的: -如何删除具有相同值的数组元素?
Array
(
[0] => Array
(
[user_id] => 10
[fname] => Test
[lname] =>
[image] => http://link//2.jpg
[category_id] => 2
[category_name_en] => Clinic
[category_name_ar] =>
[institute_rank] => 1
[institute_rating] => 4.00
[institute_review] => 1
[total_institute] => 8
[latitude] => 44.000984
[longitude] => 106.76654
)
[1] => Array
(
[user_id] => 10
[fname] => Test
[lname] =>
[image] => http://link//2.jpg
[category_id] => 2
[category_name_en] => Clinic
[category_name_ar] =>
[institute_rank] => 1
[institute_rating] => 4.00
[institute_review] => 1
[total_institute] => 8
[latitude] => 44.000984
[longitude] => 106.76654
)
)
第一个问题: -
我想删除重复的元素。就像第0个元素和第1个元素一样,所以我想要一个新的数组,只有一个来自重复值。
所以我写的代码,这片: -
$near_by_arr = array_map("unserialize", array_unique(array_map("serialize", $near_by),SORT_REGULAR));
$near_by_final = array();
foreach($near_by_arr as $a)
{
$near_by_final[] = $a;
}
然而,新的阵列$ near_by_final仍然包含重复的数据。我在另一个应用程序中使用了相同的代码,它似乎在那里工作。我现在做什么错了?
第二个问题?
假设每个索引中的子数组在结构上完全不同,但具有可能包含相同值的通用索引“user_id”。如何从具有相同user_id值的元素中仅检索一个元素?
说,例如,
Array
(
[0] => Array
(
[user_id] => 10
[fname_en] => Test
[lname_en] =>
[image] => http://link//2.jpg
[category_id] => 2
[category_name_en] => Clinic
[category_name_ar] =>
[latitude] => 44.000984
[longitude] => 106.76654
)
[1] => Array
(
[user_id] => 10
[fname] => Test
[lname] =>
[image] => http://link//2.jpg
[category_id] => 2
[category_name_en] => Clinic
[category_name_ar] =>
[institute_rank] => 1
[institute_rating] => 4.00
[institute_review] => 1
[total_institute] => 8
[latitude] => 44.000984
[longitude] => 106.76654
)
)
如何可以有一个数组,这将具有以下结构?
Array
(
[0] => Array
(
[user_id] => 10
[fname_en] => Test
[lname_en] =>
[image] => http://link//2.jpg
[category_id] => 2
[category_name_en] => Clinic
[category_name_ar] =>
[latitude] => 44.000984
[longitude] => 106.76654
)
)
* “需要紧急帮助” * - 请删除。 –
*“第二个问题?”* - 这让你的问题过于宽泛。一次提出一个问题,这就是它在Stack上的工作原理。 –
请阅读[在什么情况下,我可以添加“紧急”或其他类似的短语到我的问题,以获得更快的答案?](/ meta.stackoverflow.com/q/326569) - 总结是,这不是这是解决志愿者问题的理想方式,可能会对获得答案产生反作用。请不要将此添加到您的问题中(尤其是因为您是一位有经验的用户,并且有望知道这一点)。 – halfer