ホームページ  >  記事  >  バックエンド開発  >  mysqli の結果を複数回ループする方法: より良いアプローチ?

mysqli の結果を複数回ループする方法: より良いアプローチ?

DDD
DDDオリジナル
2024-11-02 11:22:02874ブラウズ

How to Loop Through mysqli Results Multiple Times: A Better Approach?

mysqli の結果を複数回ループする: より良いアプローチ

mysqli_fetch_array() を使用してデータベース データにアクセスするコンテキストでは、次のような問題が発生する可能性があります。結果セットを複数回繰り返す必要がある状況。ただし、指定されたコード スニペットに示されているように、同じ結果に対して mysqli_fetch_array() を 2 回使用しようとすると、効果的に機能しません。

データ操作と出力の分離

より効率的な解決策は、データ操作を出力から分離することです。データをフェッチして 1 回の手順で表示するのではなく、まずデータを選択して配列に保存する必要があります。このようにして、必要に応じて何度でもデータにアクセスして操作できます。

データの選択

データベースからデータを選択するには、次のコードを使用します。

$db_res = mysqli_query( $db_link, $sql );
$data   = array();
while ($row = mysqli_fetch_assoc($db_res)) {
    $data[] = $row;
}

このコードは SQL クエリを実行し、結果の各行を $data 配列に保存します。アクセスを容易にするために、fetch_array() の代わりに fetch_assoc() を使用して連想配列を返すことに注意してください。

データを複数回使用する

データが保存されたら$data 配列では、何度でも使用できます:

//Top row
foreach ($data as $row) {

以上がmysqli の結果を複数回ループする方法: より良いアプローチ?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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