ホームページ  >  記事  >  php教程  >  [転送] mysql_fetch_row、mysql_fetch_array、mysql_fetch_assoc の違い

[転送] mysql_fetch_row、mysql_fetch_array、mysql_fetch_assoc の違い

WBOY
WBOYオリジナル
2016-10-08 16:04:46993ブラウズ
リーリー

分析:
mysql_fetch_row、この関数は結果セットから列挙データとして行を取得し、指定された結果識別子に関連付けられた結果セットからデータの行を取得し、それを配列として返します。各結果列は、オフセット 0 から始まる配列のセルに格納されます。 ここでのオフセットは 0 から始まることに注意してください。これは、フィールド名を使用して値を取得することはできず、インデックスのみを使用して値を取得できることを意味します。そのため、次のコードは値を取得できません:
while($row = mysql_fetch_row ($res) ){
echo $row['cid'].'::'.$row[1].";
} //$row['cid'] ここでは値を取得できません。
mysql_fetch_array,取得結果セットから 行は、連想配列、数値配列、またはその両方として使用されます。データを数値インデックスとして配列に保存するだけでなく、フィールド名を使用してデータを連想インデックスとして保存することもできます。つまり、結果は配列のようになり、キーまたはインデックスで取得できるため、
while($row = mysql_fetch_array($res)){
echo $row['cid' ].'::'.$row[1]. ”;
}//ここで$row['cid']、$row[1]は対応する値を取得できます。
mysql_fetch_object は、名前が示すように、結果セットから行をオブジェクトとしてフェッチし、フィールド名を属性として使用します。したがって、値を取得する唯一の方法
while($row = mysql_fetch_object($res)){
echo $row->cid.'::'.$row->title."";
}
mysql_fetch_assoc, from 結果セットから 1 行を連想配列として取得します。つまり、この関数は mysql_fetch_row のようにインデックスを使用して値を取得することはできませんが、フィールド名のみを使用して値を取得できます。そのため、
while($row = mysql_fetch_assoc( $res)){
echo $row[ 'cid'].'::'.$row[1].";
} //$row[1] はこのように値を取得できません
追加ポイント:
mysql_fetch_array関数は次のように定義されます: array mysql_fetch_array (resource result [, int result_type]) は、結果セットからフェッチされた行に基づいて生成された配列を返します。または、
mysql_fetch_array( のオプションの 2 番目のパラメーター result_type) を返します。 ) は定数であり、次の値を受け入れることができます: mysql_fetch_assoc($result) == mysql_fetch_row($result) == mysql_fetch_ar光線($result, MYSQL_NUM);
つまり、mysql_fetch_array() は、ある程度まで、mysql_fetch_row() と mysql_fetch_assoc() のコレクションとみなすことができます。さらに、mysql_fetch_array() には、アソシエーションと数値インデックスの両方を含む配列
$row = $ としましょう。
$db は人間のデータベース操作クラス、$db->fetch_array($query)、fetch_array( $query) はその db クラスのメソッドです。 $row = $db-> ;fetch_array($query) は、レコード セット $query からデータベース内のレコードの行を取得することを意味します。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。