$a=Array
(
    [businessaddressstreet] =0
    [homeaddresspostalcode] =1
    [firstname] =2
    [homeemailaddress] =3
    [workemailaddress] =4
    )另一个数组
$b=Array
(
    [0] =Array
        (
            [0] =wqeqe
            [1] =wer
            [2] =wer
            [3] [email protected]
            [4] =eqee
          )    [1] =Array
        (
            [0] =werwer
            [1] =tert
            [2] =tert
            [3] [email protected]
            [4] =rwe
        )    [2] =Array
        (
            [0] =wer
            [1] =ertert
            [2] =ertet
            [3] [email protected]
            [4] =dasd
        )    )
处理b这个数组使他为:
$b=Array
(
    [0] =Array
        (
            [businessaddressstreet] =wqeqe
            [homeaddresspostalcode] =wer
            [firstname] =wer
            [homeemailaddress] [email protected]
            [workemailaddress] =eqee
          )    [1] =Array
        (
            [businessaddressstreet] =werwer
            [homeaddresspostalcode] =tert
            [firstname] =tert
            [homeemailaddress] [email protected]
            [workemailaddress] =rwe
        )    [2] =Array
        (
            [businessaddressstreet] =wer
            [homeaddresspostalcode] =ertert
            [firstname] =ertet
            [homeemailaddress] [email protected]
            [workemailaddress] =dasd
        )    )
求大侠给解决一下,thanks

解决方案 »

  1.   

    foreach($b as $t) {
      foreach($a as $k=>$v) {
        $p[$k] = $t[$v];
      }
      $r[] = $p;
    }$b = $r;//或
    $a = array_flip($a);
    foreach($b as $v) {
      $r[] = array_combine($a, $v);
    }$b = $r;
      

  2.   


    $a = array( 'businessaddressstreet' => 0, 
    'homeaddresspostalcode' => 1, 
    'firstname' => 2, 
    'homeemailaddress' => 3, 
    'workemailaddress' => 4);
    $keys = array_keys($a);
    $b = array( array('wqeqe', 'wer', 'wer', '[email protected]', 'eqee'), 
    array('werwer', 'tert', 'tert', '[email protected]', 'rwe'), 
    array('wer', 'ertert', 'ertet', '[email protected]', 'dasd'));$num = count($b);
    $c = array();
    foreach($b as $k => $v){
    $c[] = array_combine($keys, $v);
    }echo '<pre>';print_r($c);
      

  3.   

    本人比较笨,用了个很土的方法,感觉还有很多效率高的方法,关注一下!下面例子测试通过!
    foreach($a as $key=>$value)
      {
       foreach($b as $key1=>$value1)
       {
       foreach($value1 as $key2=>$value2)
       {
       if($value === $key2)
       {
       unset($b[$key1][$key2]);
       $b[$key1][$key] = $value2;
       }
       }
       }
      }