みなさんこんにちは!私の無知を許してください、私はphpにとても慣れていません。
PHPコードがそのように動作する理由を理解するのに苦労しています。コードは機能していますが、これらの値がエコーされる理由がわかりません。
(コードは説明のために単純化されていますが、通常は、カスタムの列数に基づいてテーブルにデータを入力してフォーマットします)
質問 * ** (コードを参照)
変数がエコーするのはなぜですか$cell
(?????? QUESTION ????? を参照): 1 2 3 4 5 6 7 ? 0 1 2 3 4 5 6 // を期待していたのは、最初に割り当てられたように、開始点が $cell = 0 になると思ったからです。唯一の合理的な理由は、$cell +=$i (for ループから) から値を継承することですが、$col=2 の場合、最初のステートメントは完全にスキップされず、else ステートメントのみが実行されますか?
<?php
for ($i=1; $i <= 7 ; $i++) {
$cell = 0;
echo "<tr>";
for ($col=1; $col <= 2; $col++) {
echo "<td>" ;
if ($col == 1) {
echo $cell; // echoes: 0 0 0 0 0 0 0 ----> because $cell = 0
$cell +=$i;
echo $cell; // echoes: 1 2 3 4 5 6 7 ----> because of $cell +=$i;
} else {
echo $cell ; // echoes: 1 2 3 4 5 6 7 ?????? QUESTION ?????
$cell +=7;
echo $cell; // echoes: 8 9 10 11 12 13 14
}
echo "</td>";
}
echo "</tr>";
}
?>
どんな助けでも感謝します。