【发布时间】:2013-03-08 21:16:29
【问题描述】:
我肯定会在这里为一些我确信非常简单的事情而努力......
我有 2 个数组。
-
$post_cats是任何给定帖子所在的类别。 -
$ad_cats是放置广告的类别数组。
基本上,如果帖子在其选定类别数组中具有与广告类别数组中的项目匹配的类别,则它必须返回匹配的值/项目。
$post_cats 返回此
array(4) {
[0]=> array(1) { ["slug"]=> string(6) "energy" }
[1]=> array(1) { ["slug"]=> string(6) "global" }
[2]=> array(1) { ["slug"]=> string(8) "identify" }
[3]=> array(1) { ["slug"]=> string(5) "south" }
}
和$ad_cats 返回这个
array(6) {
[0]=> array(1) { ["slug"]=> string(5) "north" }
[1]=> array(1) { ["slug"]=> string(5) "south" }
[2]=> array(1) { ["slug"]=> string(4) "east" }
[3]=> array(1) { ["slug"]=> string(4) "west" }
[4]=> array(1) { ["slug"]=> string(6) "global" }
[5]=> array(1) { ["slug"]=> string(8) "fallback" }
}
那里的重复项是“south”,所以在我看来array_intersect($post_cats, $ad_cats); 的值应该是一个包含单个项的数组 - “south”,对吗?
但是它返回,看起来像,任何一个数组中的所有内容......我一辈子都无法让它工作......
使用上面的例子,我需要将“south”返回给一个变量。
【问题讨论】:
-
array_intersect将无法按照您对多维数组的预期工作。 -
“全球”不是也重复了吗?
-
@nickb 好的,你能帮我看看我应该使用什么吗?
标签: php arrays multidimensional-array array-intersect