クエリの結果を取得することは、PHPを使用してMySQLと対話する場合、一般的で重要なステップです。 MySQL_FETCH_ARRAY()は、クエリの結果を取得するためにPHPで使用される関数です。結果を連想配列、数値インデックスアレイ、またはその両方として返すことができるため、後続のプログラムでそれらを処理できます。
注: mysql_fetch_array()は、php 7.0以降に放棄されているmysql拡張機能に属します。新しいプロジェクトはMySQLIまたはPDO_MYSQLを使用することをお勧めします。この記事は、主に古いシステムまたは学習目的を維持することを目的としています。
開始する前に、MySQLデータベースに接続し、データベースを選択する必要があります。
<code>&lt;?php //データベースに接続$ conn = mysql_connect( "localhost"、 "username"、 "password"); if(!$ conn){
die( "接続が失敗した:"。mysql_error());
}
//データベースを選択します
mysql_select_db( "test_db"、$ conn);
?>
</code>
簡単なSQLクエリを実行して、ユーザーテーブルですべてのユーザー情報を取得します。
<code>&lt;?php $ sql = "id、name、email from users"; $ result = mysql_query($ sql、$ conn); if(!$ result){
die( "クエリが失敗した:"。mysql_error());
}
?>
</code>
次に、 mysql_fetch_array()を使用してクエリの結果を取得します。
<code>&lt;?php while($ row = mysql_fetch_array($ result、mysql_assoc)){echo "id:"。 $ row ["id"]。 "&lt; br&gt;"; echo "name:"。 $ row ["name"]。 "&lt; br&gt;"; echo "email:"。 $ row ["email"]。 "&lt; br&gt;"; }?&gt; </code>上記のコードでは、 mysql_assoc定数に渡されます。つまり、配列に関連する方法でデータを取得したいと考えています。これは、フィールド名で各列の値にアクセスできることを意味します。
mysql_fetch_array()の2番目のパラメーターは、次のモードに設定できます。
mysql_assoc :連想配列のみを返します。
mysql_num :数値インデックスアレイのみを返します。
mysql_both (デフォルト):連想インデックスアレイと数値の両方のインデックスアレイを返します。
例(同時に関連性とインデックスを取得):
<code>&lt;?php while($ row = mysql_fetch_array($ result)){echo $ row [0]; //番号インデックスECHO $ row ["name"]; //フィールド名を使用}?&gt; </code>完全な使用プロセスは次のとおりです。
<code>&lt;?php //データベースに接続$ conn = mysql_connect( "localhost"、 "root"、 "password"); if(!$ conn){die( "connection failed:"。mysql_error()); }mysql_select_db( "test_db"、$ conn);
//クエリデータ
$ sql = "select id、name、email from users";
$ result = mysql_query($ sql、$ conn);
//出力結果
while($ row = mysql_fetch_array($ result、mysql_assoc)){
echo "<p>";
エコー「ユーザーID:」。 $ row ["id"]。 "<br>";
echo "username:"。 $ row ["name"]。 "<br>";
エコー「ユーザーメール:」。 $ row ["email"]。 "<br>";
echo "プロファイルリンク: <a href = 'https://gitbox.net/user/"。 $ row ["id"]。 "'> view </a>";
echo "</p>";
}
//接続を閉じます
mysql_close($ conn);
?>
</code>
MySQL_FETCH_ARRAY()は、 MySQLクエリの結果を取得するための柔軟な方法を提供します。新しいプロジェクトでの使用はもはや推奨されませんが、その仕組みを理解することは、PHPとデータベースの相互作用の理解に役立ちます。古いシステムを維持するときは、それを使用する方法を習得する必要があります。
新しいシステムを開発するときは、代わりにmysqli_fetch_assoc()またはpdostatement :: fetch()を使用することをお勧めします。どの方法を使用しても、基礎となるクエリロジックを理解することは、常に信頼できるアプリケーションを構築するための基礎です。