2010-02-23 220 views
0

我在掌握如何匹配一维阵列与二维阵列时遇到了一些问题。所以我有一个数组,一维,包含数字(例如1,2,3,4,5 ...)和一个包含数字和一些文本的二维数组(例如[1] [狗], [2] [猫],[3] [鼠标] ...)匹配二维阵列与一个二维阵列

因此,现在我想要做的就是使用第一个数组,看看是否匹配第二个数组,例如如果array [0](包含值'1')匹配array2 [x],则输出array2的文本array2 [x] [text]。

任何帮助appriciated!

编辑:

根据要求我出口的阵列,我不知道这是否会有所帮助,但在这里我们去:

arrayX (0 => '1', 
     1 => '2' 
) 
arrayY (0 => array (0 => 'cat'), 
     1 => array (0 => 'dog') 
) 

我想this'd工作类似于标签系统?如果arrayX包含值为'1'的条目,则将其与arrayY进行比较并输出数字匹配。

+0

你可以请'var_export'数组并在问题中提供它们。谢谢。 – Gordon 2010-02-23 09:25:37

+0

谢谢。对于'1',你希望返回值是'狗',那么,对吧? – Gordon 2010-02-23 10:27:34

回答

1

你的意思是,第二阵列是这样的: $array[0]['cat'] = 'dog'

或者$array[0] = 'cat'

如果是后者,你可以重复第一个阵列上,从第二阵列像这样输出值

foreach ($array1 as $key) { 
echo $array2[$key]; 
} 
0
$arr1 = array(1, 2, 3, 5, 7, 11, 13, 17); 
$arr2 = array(
      2 => array('text' => 'Foo', 'animal' => 'dog'), 
      3 => array('text' => 'Bar', 'animal' => 'cat'), 
      5 => array('text' => 'bla', 'animal' => 'rabbit'), 
      11 => array('text' => 'blub', 'animal' => 'horse'), 
      13 => array('text' => 'foobar', 'animal' => 'mouse')); 

for ($i = 0; $i < count($arr1); $i++) 
{ 
    if (isset($arr2[$i])) 
    { 
     echo $arr2[$i]['text'] . "<br />\n"; 
    } 
} 

像这样的事情?