私はforeach
ループを持つwhile/for
ループを持っています。コードを読むことで、私が論理の点で達成しようとしていることを自明に説明できます。foreach文がwhile/forを何度もループするように強制する
私はPHPでカレンダーを作成しようとしています。 foreach
ステートメントは、カレンダーインターフェイスで4週間、7日間、5 x 7 = 35の35個のセルを作成します。
while
ループは4月(30日)各細胞の30。
ただし、以下のコードを実装する場合、各数値は30回反復されます。
$i = 1;
while ($i <= 30){
foreach ($this->cells as $cells){
foreach ($cells as $key => $object){
echo "<td>" . $i . "</td>";
if($object % 7 == 0){
echo "</tr><tr>";
}
}
}
$i++;
}
私はこれを試してみました:代わりに1-30何回もそれぞれを出力するので、私は唯一の1-30をしたいとき、それは、1から35を出力
$i = 1;
while ($i <= 30){
foreach ($this->cells as $cells){
foreach ($cells as $key => $object){
echo "<td>" . $i . "</td>"; $i++;
if($object % 7 == 0){
echo "</tr><tr>";
}
}
}
}
。
私は結果のforループを試しましたが、それは各番号の多くを印刷します。ループコードの場合:
for ($i = 1; $i <= 30; $i++){
foreach ($this->cells as $cells){
foreach ($cells as $key => $object){
echo "<td>" . $i . "</td>";
if($object % 7 == 0){
echo "</tr><tr>";
}
}
}
}
$this->cells
次の2つを行う必要があり、なぜ私は本当にわからないんだけど、配列
'while()'の代わりに 'for()'ループを使わないのはなぜですか?私はそれに精通していなかったので – ThiefMaster
。 – RSM
の場合はどのようにして4 * 7 = 35ですか?説明してください。 –