0

2つの配列があり、そのうちの1つに新しいキー名が含まれています

$assoc = ['name', 'lastname', 'pesel']; 

そして2番目にこれを見てください

$inputs = ['John', 'Don', '987987', 'Mike', 'Evans', '89779' ];

配列は新しいキー名です。 、、などに変更し$assocたいと思います。[0][1]['name']

array(2) {
  ['person'] =>
  array(3) {
    ['name'] => string(4) "John"
    ['lastname'] => string(3) "Don"
    ['pesel'] => string(6) "987987"
  }
  ['person'] =>
  array(3) {
    ['name'] => string(4) "Mike"
    ['lastname'] => string(5) "Evans"
    ['pesel'] => string(5) "89779"
  }
}

ご協力いただきありがとうございます

4

2 に答える 2

5

それはとても簡単です:

$new_array = array();

foreach(array_chunk($inputs, 3) as $person) {
   $new_array[] = array_combine($assoc, $person);
}
于 2013-03-10T16:11:57.020 に答える
-1
<?php
$assoc=Array("name", "lastname", "pesel");
$inputs=Array('John', 'Don', '987987', 'Mike', 'Evans', '89779' );

$resultant_array=Array();
for($i=0; $i<count($inputs); $i+=count($assoc)){
//echo $i."\n\n";
 for($j=0; $j<count($assoc); $j++){

    $b2g[$assoc[$j]]=$inputs[$i+$j];
 }
 $resultant_array[]=$b2g;
}   

print_r($resultant_array);

それはより長くて一般的な用途です..私は実際に多くの再帰を使用しました..

于 2013-03-10T16:21:01.727 に答える