PHP Webリファレンス

「PHP Webリファレンス」は、PHP で使用可能な関数や PHP の文法などを分かり易く分類することを目的として作成しています。
PHPによるCGIプログラム作成等の参考にして頂ければと思います。

SQLの実行結果を配列・連想配列に格納する

書式
mysql_fetch_array( res )
mysql_fetch_array( res, int )
引数・戻り値
戻り値(array) 下記のいずれか、もしくは両方
・テーブルの列番号を添え字(キー)とした配列
・テーブルの列名を添え字(キー)とした連想配列
配列の場合、1列目のデータは $array[0] に格納
連想配列の場合、1列目のデータは $array['COL_NAME1'] に格納
(COL_NAME1 はテーブルの1列目の列名)
引数1(res) SQL文実行結果リソース
引数2(int) 以下の定数を使用して、戻り値を配列か連想配列か、もしくは両方を取得するかを選択可能
MYSQL_BOTH戻り値は配列と連想配列の両方
指定しない場合、これが指定される
MYSQL_NUM戻り値は配列
MYSQL_ASSOC戻り値は連想配列
備考

MySQL に接続するには mysql_connect を使用する。
DB を選択するには mysql_select_db を使用する。
SQL 文を実行するには mysql_query を使用する。
MySQL への接続を切断するには mysql_close を使用する。
第二引数で MYSQL_NUM を指定した場合、mysql_fetch_row と同じになる。
第二引数で MYSQL_ASSOC を指定した場合、mysql_fetch_assoc と同じになる。

関連カテゴリー
データベース(MySQL) / 関数・ステートメント索引(M)
サンプルコード
<?php

$hostname = "localhost";
$uname = "USERNAME";
$upass = "PASSWORD";
$dbname = "DBNAME";
$tblname = "TABLENAME";

//MySQL に接続する。
if( !$res_dbcon = mysql_connect( $hostname, $uname, $upass) ){
	print "MYSQL への接続に失敗しました。";
	exit;
}

//使用するDBを選択する。
mysql_select_db( $dbname, $res_dbcon );

//SQL文を実行し、結果のリソースを取得。
$res_result = mysql_query( "SELECT * from {$tblname}", $res_dbcon );


//********** 問い合わせ結果を配列に格納して表示。
while( $row = mysql_fetch_array( $res_result, MYSQL_NUM ) ){
	//mysql_fetch_row と同じ結果になる。
	var_dump( $row );
}

//行のカウンタを1行目に巻き戻す
mysql_data_seek( $res_result, 0 );


//********** 問い合わせ結果を連想配列に格納して表示。
while( $row = mysql_fetch_array( $res_result, MYSQL_ASSOC ) ){
	//mysql_fetch_assoc と同じ結果になる。
	var_dump( $row );
}

//行のカウンタを1行目に巻き戻す
mysql_data_seek( $res_result, 0 );


//********** 問い合わせ結果を配列および連想配列に格納して表示。
while( $row = mysql_fetch_array( $res_result, MYSQL_BOTH ) ){
	//1列目の情報は $row['COL_NAME1'] と $row[0] に、
	//2列目の情報は $row['COL_NAME2'] と $row[1] に、
	//3列目の情報は $row['COL_NAME3'] と $row[2] に格納される。
	//(COL_NAME1,2,3 は1列目、2列目、3列目の列名)
	var_dump( $row );
}

//MySQL への接続を切断する。
//この処理を行わなくてもプログラム終了時に自動的に切断される。
mysql_close( $res_dbcon );

?>
関連カテゴリー
データベース(MySQL) / 関数・ステートメント索引(M)