PDO プリペアド ステートメント fetch() が二重の結果を返すのはなぜですか?

Mary-Kate Olsen
リリース: 2024-11-04 03:15:01
オリジナル
217 人が閲覧しました

Why is My PDO Prepared Statement fetch() Returning Double Results?

PDO プリペアド ステートメント fetch() が 2 つの結果を返す

PDO プリペアド ステートメントの使用時に予期しない結果が発生する開発者はあなただけではありません。 fetch() メソッドを使用します。この問題を解決するには、さまざまなフェッチ スタイルで fetch() がどのように動作するかを理解する必要があります。

デフォルトでは、fetch() は連想配列 (列名でインデックス付け) と数値配列 (列名でインデックス付け) の両方を返します。番号)。あなたの場合、これはテーブル内の各行の各列が 2 回エコーアウトされることを意味します。

これを回避するには、fetch() を呼び出すときに特定のフェッチ スタイルを指定する必要があります。これを行うには、PDO::FETCH_* 定数の 1 つを fetch() メソッドの 2 番目の引数として渡します。

連想配列のみ:

<code class="php">while ($rows_get_rows = $result_get_rows->fetch(PDO::FETCH_ASSOC)) {
    // Your code here
}</code>
ログイン後にコピー

数値配列のみ:

<code class="php">while ($rows_get_rows = $result_get_rows->fetch(PDO::FETCH_NUM)) {
    // Your code here
}</code>
ログイン後にコピー

フェッチ スタイルを指定することで、fetch() からデータが返される方法を制御し、不要な重複を防ぐことができます。

以上がPDO プリペアド ステートメント fetch() が二重の結果を返すのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート