私はn
配列を持っています(たとえば2つの配列):
$tab['1'] = array('1', '2', '3');
$tab['2'] = array('A', 'B', 'C');
どうすればこの結果を得ることができますか?
1 A
1 B
1 C
2 A
2 B
2 C
3 A
3 B
3 C
つまり、最初の配列の各要素と他の配列の各要素。
2次元の反復を行います。
このように最初の配列を実行します
foreach ($tab[1] as $number) {...}
最初の配列の番号ごとに、括弧内のコードが実行されます。各数字の各文字を数えたい場合は、内部で同じ反復を繰り返すだけです。
foreach ($tab[1] as $number) {
foreach ($tab[2] as $letter) {
print($number.' '.$letter."\n");
}
}
foreach ($tab[1] as $num) {
foreach ($tab[2] as $letter) {
echo "$num $letter\n";
}
}
それを行う別の方法(それを楽しむために)
array_map(function($a, $b) {
foreach( $b as $e ) {
echo "$a $e\n";
}
},
$tab['1'],
array_fill(0, count($tab['1']), $tab['2']));