ホームページ  >  記事  >  バックエンド開発  >  PDO を使用してデータベース結果を連想配列に効率的に変換するにはどうすればよいですか?

PDO を使用してデータベース結果を連想配列に効率的に変換するにはどうすればよいですか?

Susan Sarandon
Susan Sarandonオリジナル
2024-10-22 20:04:02268ブラウズ

How to Efficiently Convert a Database Result Into an Associative Array Using PDO?

PDO でキーと値のペアを使用して結果セットを連想配列に変換する

キーと値のペアを返すクエリを操作する場合、例:

<code class="sql">SELECT `key`, `value` FROM `settings`;</code>

キーと値が返されたデータに対応する連想配列が必要な場合があります。通常、これは次のようなプロセスを通じて実現されます。

<code class="php">$settings_flat = $db
    ->query("SELECT `name`, `value` FROM `settings`;")
    ->fetchAll(PDO::FETCH_ASSOC);

$settings   = array();

foreach ($settings_flat as $setting) {
    $settings[$setting['name']] = $setting['value'];
}</code>

この方法は一般的ですが、複数の反復が必要であり、パフォーマンス上の問題が発生する可能性があります。ただし、代替ソリューションが利用可能です。

<code class="php">$q = $db->query("SELECT `name`, `value` FROM `settings`;");
$r  = $q->fetchAll(PDO::FETCH_KEY_PAIR);</code>

PDO::FETCH_KEY_PAIR 定数を使用すると、クエリから直接データを連想配列として取得できるため、プロセスが簡素化され、より大きな結果セットのパフォーマンスが向上する可能性があります。

以上がPDO を使用してデータベース結果を連想配列に効率的に変換するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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