私はMySQLiを試し、次のコードを使用して、配列のフォーマット/使用法の違いを確認しています。fetch_array(MYSQLI_ASSOC);
これが私のコードです:
include "Database.php";
$ArrayQuery = $mysqli->query("SELECT * FROM accountinformation");
while ($ArrayResults = $ArrayQuery->fetch_array(MYSQLI_ASSOC))
{
echo count($ArrayResults);
echo "<br>";
}
echo "<br><br><bR><br>";
$Empty = array();
while ($ArrayResult = $ArrayQuery->fetch_array(MYSQLI_ASSOC))
{
foreach ($ArrayResult AS $ArrayRes)
{
$Empty[] = $ArrayRes;
}
}
print_r($Empty);
問題は、Variable
whileループに同じものを使用していることです。最初のループが返され3
、次に3
これが返されます。
しかし、問題は、私の2番目のクエリです。空白の配列を返します
array( )
いつprint_r();
そして私がするとき:
while ($ArrayResult = $ArrayQuery->fetch_array(MYSQLI_ASSOC))
{
print_r($ArrayResult);
}
2番目のwhileループでは、出力に対して何も返しません。
私は自分の変数をチェック$ArrayResults
し$ArrayResult
ましたが、重複していません。実際、それらは一意です。
最初のwhileループが機能しているときに、2番目のwhileループが何も返さないのはなぜですか?
アップデート
別の開始変数を使用して混合物に2番目のクエリを生成すると、次のようになります。
$ArrayQuer = $mysqli->query("SELECT * FROM accountinformation");
2番目のwhileループを変更します。
while ($ArrayResult = $ArrayQuer->fetch_array(MYSQLI_ASSOC))
{
print_r($ArrayResult);
}
期待どおりの出力が得られますか?では、MySQLiの場合、スクリプト全体で同じパラメーターを2回使用することはできませんか?