$a=array("a","b");
$b=array("c","d","e","f");
$c=array("1","-1","0","1");
我要得到$b内与$a中元素相同的项的位置,以便于取出$c中相同位置的值。

解决方案 »

  1.   

    print_r(array_intersect_assoc($a, $b));
      

  2.   

    如果只是想要取得单个下标。
    建议预先定义一个变量比如 $a
    然后做循环嵌套,把第一个数组的变量逐一和第二个数组的做比较。
    如果有相同的,取得这个下标赋值给$a
    然后就可以得到$c[$a]
      

  3.   

    <?php
    $a=array("a","e");
    $b=array("c","d","e","f");
    $c=array("1","-1","0","1");//方法一
    for($i=0;$i<count($a);$i++)
      for($j=0;$j<count($b);$j++)
        if($a[$i] == $b[$j])
          echo "$c[$j]<br>";//方法二
    foreach($a as $v) {
      if($n = array_search($v,$b))
        echo "$c[$n]<br>";
    }//方法三
    $t = array_intersect($b,$a);
    foreach($t as $k=>$v)
      echo "$c[$k]<br>";
    ?>