-2
<?php
$mysqli = new mysqli("localhost", "my_user", "my_password", "world");
/* check connection */
if (mysqli_connect_errno()) {
printf("Connect failed: %s\n", mysqli_connect_error());
exit();
}
$query = "SELECT Name, CountryCode FROM City ORDER by ID LIMIT 3"; //Example table
$result = $mysqli->query($query);
//!!!!!!
while($row = $result->fetch_array())
{
echo $row["Name"];
}
/* close connection */
$mysqli->close();
//This example is from php.net
?>
ループ中(完全に理論上)に何が起こっていますか?私は、$row
という名前の新しい変数が作成されていることがわかります。そして、mysqliクエリを使って検索した結果、行から配列に変換されています。しかし、配列は真であるブール値ではありません。したがって、どのようにwhileループを実行することができますか?私は基本的に何か間違ったことを理解しており、私が誤解していることを知りたいと思っています。ドを使用してPHP/MYSQLI:whileループの理論は、クエリ結果をループします。
ブーリアン:基本的には、偽でない限り、真とみなすことができます。 '$ row'は、フェッチがfalseを返すときにのみfalseに設定されます。これは、結果セットから次の結果を返さないときです。つまり、結果がなくなってセットから戻るときです。 – RiggsFolly
@RiggsFollyありがとう! – VicStudio
@RiggsFolly '$ row = $ result-> fetch_array()'と 'while($ row){..}'のようなやり方を教えてください。 – VicStudio