[英]PHP Array Remove Duplicates - not Array_Unique
我在PHP中有一个多维数组(伪数据):
Array
(
[0] => Array
(
[pmkSuppliers] => 1
[0] => 1
[Name] => Supplier2
[1] => Supplier2
[Email] => Me@me.com2
[2] => Me@me.com2
[Address] => 624 st
[3] => 624 st
[Phone] => 900-111-1111
[4] => 900-111-1111
[Fax] => 900-111-1112
[5] => 900-111-1112
[TechSupport] => 900-111-1112
[6] => 900-111-1112
[Contact] => Greg
[7] => Greg
[Modified] => 2016-06-07
[8] => 2016-06-07
)
[1] => Array
(
[pmkSuppliers] => 2
[0] => 2
[Name] => Nike
[1] => Nike
[Email] => me@none.com
[2] => me@none.com
[Address] => 4566 way
[3] => 4566 way
[Phone] => 901-206-5555
[4] => 901-206-5555
[Fax] => 901-206-5555
[5] => 901-206-5555
[TechSupport] => 901-206-5445
[6] => 901-206-5445
[Contact] => Brad
[7] => Brad
[Modified] => 2016-06-08
[8] => 2016-06-08
)
)
我想用非int键删除所有元素。 所以看起来像这样:
Array
(
[0] => Array
(
[0] => 1
[1] => Supplier2
[2] => Me@me.com2
[3] => 624 st
[4] => 900-111-1111
[5] => 900-111-1112
[6] => 900-111-1112
[7] => Greg
[8] => 2016-06-07
)
[1] => Array
(
[0] => 2
[1] => Nike
[2] => me@none.com
[3] => 4566 way
[4] => 901-206-5555
[5] => 901-206-5555
[6] => 901-206-5555
[7] => Brad
[8] => 2016-06-08
)
)
我认为必须有一种简单的方法来执行此操作,但是我遇到了麻烦。 我不能使用PHP方法array_unique,因为有时数组中的值是相同的(例如第二组中的值)。
如果有人能指出我正确的方向,那就太好了。
谢谢,
FP
这就是我一直在做的事情,但是看起来很粗糙。
foreach ($array as $insideArray) {
foreach ($insideArray as $key => $value) {
if (!is_int($key)) {
echo $value;
}
}
}
foreach ($array as &$arr){
foreach ($arr as $key => $value) {
if (!is_int($key)) {
unset($arr[$key]);
}
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.