多个foreach没有嵌套

sta*_*ker 4 php arrays foreach associative-array

第一个代码块按预期工作.它是foreach$fnames键值数组中打印值.

foreach($fnames as $fname){
   echo $fname;
}
Run Code Online (Sandbox Code Playgroud)

$fnames阵列有一个$lnames对应于这阵,我想与FNAME同时,这样的打印LNAME:但它不会编译

foreach($fnames as $fname && $lnames as $lname){
   echo $fname . " " . $lname;
}
Run Code Online (Sandbox Code Playgroud)

我也试过这个,但那也没有编译.

foreach($fnames,$lnames as $fname,$lname){
   echo $fname . " " . $lname;
}
Run Code Online (Sandbox Code Playgroud)

唯一编译的是这个,但它没有给出正确的结果.

foreach($fnames as $fname){
   foreach($lnames as $lnames){
       echo $fname . " " . $lname;
   }
}
Run Code Online (Sandbox Code Playgroud)

如何在同一索引的2个数组之间进行这种配对?

Mar*_*ker 9

foreach($fnames as $key => $fname){ 
   echo $fname.' '.$lnames[$key]; 
}
Run Code Online (Sandbox Code Playgroud)

  • 应该是,假设数组中的键匹配. (3认同)

Wri*_*ken 5

另一种选择是:

foreach(array_map(null,$fnames,$lnames) as $name){
    echo $name[0].' '.$name[1];
}
Run Code Online (Sandbox Code Playgroud)