fetch_assocがどのように動作するのか、how/whyを理解しようとしています。 私は次のコードを持っている:fetch_assoc()の理解
$results = $connectToDb->fetch("SELECT * FROM customer");
$resultsArray = $results->fetch_assoc();
print_r($resultsArray); //print_r 1
while($row = $results->fetch_assoc()){
print_r($row); //print_r 2
}
クエリは、テーブルから3つの行を返します。 第1のprint_rは照会されたデータの第1行のみを返しますが、第2のprint_rはすべて3を返します。どのようにしてfetch_assocをwhileループに置くと、何度もアクションを実行するように指示されますか? fetch_assocは連想配列かNULLのどちらかを返しますが、whileループがfetch_assocに次の行をフェッチする方法を理解するのは難しいですね。
ありがとうございます。
なぜループに何かを置くと何度か何かが起こるのですか? – Phylogenesis
while文の意味は簡単です。 while式がTRUEと評価される限り、PHPはネストされたステートメントを繰り返し実行するように指示します。式の値は、ループの開始時に毎回チェックされるため、ネストされた文の実行中にこの値が変更されても、繰り返しは終了しません(PHPが文を実行するたびに1回の繰り返しです)。時には、while式が最初からFALSEと評価された場合、ネストされたステートメントは一度も実行されません。 – Daan
http://php.net/manual/en/control-structures.while.php – RiggsFolly