【发布时间】:2015-08-25 22:29:50
【问题描述】:
假设我有两个数组
数组 A
N1099
N1100
N1100.1
N1100.2
N1100.3
N1100.4
N1100.5
N1101
N1101.1
数组 B
N1100.1
N1100.2
N1100.3
N1100.4
N1100.5
N1100.6
N1101.1
现在您可以看到数组 a 包含 N1100 和 N1101,并且它们在列表 B 中也有“子项”。然后我想删除数组 A 中的父项,使其变为:
比较两个数组后的结果数组
N1099
N1100.1
N1100.2
N1100.3
N1100.4
N1100.5
N1101.1
如何在 php 中做到这一点?
我只发现了诸如合并 2 个数组和过滤重复项之类的问题,而这里的情况并非如此。我想过滤掉不包含点“。”的重复项。在里面。
PHP - How to compare two arrays and remove duplicate values
PHP - Merging two array into one array (also Remove Duplicates)
【问题讨论】:
-
不清楚您要做什么。列表是指数组吗?
-
循环遍历第一个数组。对于每个值,如果它存在于另一个数组中,则保留它。如果它在另一个数组中不存在,它必须是父级并被删除?不确定这是否是您的数据的工作方式,但这将是我的方法.....编辑哎呀,我看到您想要 N1099 而不是 N1100。我想你必须拆分字符串(爆炸)并检查前半部分
-
Now You can see that array a contains N1100 and 1001 and they also has "children" in list B.。它在哪里? -
抱歉拼写错误。是的,这将是一个好主意 RightClick 谢谢会尝试。 =)
-
@anders 也请对答案投票