推广数组并匹配?

时间:2011-09-21 02:48:35

标签: php arrays

我如何遍历一个数组(300多个项目,通过simplexml导入)并拉出每个具有某个$ x-> channel-> item->标题的项目并将其放入不同的数组?

我无法制作干草堆针头的头或尾或如何推动阵列

假设我有一个数组(针),如:array(“3332”,“3300”,“3493”,“8380”),我想匹配,如果其中任何一个出现在大数组(haystack)。我该怎么做?

3 个答案:

答案 0 :(得分:0)

您必须迭代大数组,并检查$x->channel->item->title的值。如果符合您的条件,请将其推入新阵列:

$theArray; // Your 300+ array
$lookFor = array('firstthing', 'second thing', 'third thing');
$newArray = array();

foreach($theArray as $x) {
    if ( in_array($x->channel->item->title, $lookFor) ) {
        array_push($newArray, $x);
    }
}

答案 1 :(得分:0)

foreach($yourArray as $key => $value)
{
  //do your things with $key and/or $value
}

答案 2 :(得分:0)

从Joseph的循环修改,你可以这样做:

$theArray; // Your 300+ array
$newArray = array();
$matchArray = array("3332","3300","3493","8380");

foreach($theArray as $x) {
    if (in_array($x->channel->item->title, $matchArray)) {
        array_push($newArray, $x);
    }
}

http://php.net/manual/en/function.in-array.php

查看in_array()