ネイティブ データ型での MySQL クエリ結果の取得
PHP で MySQL を使用する場合、mysql_fetch_row() や mysql_result( などの関数を通じてクエリ結果を取得します。 ) 通常、数値を文字列としてレンダリングします。これは、特に元の形式でデータを操作する必要がある場合には必ずしも理想的であるとは限りません。
PHP 5.2 では、ネイティブ データ型でデータを取得するのは簡単ではありません。ただし、PHP 5.3 では mysqlnd ドライバーが導入されており、サーバー側で準備されたステートメントを使用するときにネイティブ データ型を返す機能が提供されます。これは、INT 列が文字列ではなく整数として返されることを意味します。
たとえば、準備されたステートメントで mysqlnd を使用する場合、次のコードは id 列を整数として返します:
<code class="php">$stmt = $conn->prepare("SELECT id FROM table_name WHERE name = ?"); $stmt->execute(array($name)); $row = $stmt->fetch(PDO::FETCH_ASSOC); $id = $row['id'];</code>
プリペアドステートメントを使用できない場合、または 5.3 より前のバージョンの PHP を使用している場合は、カスタム マッピング システムまたはオブジェクト リレーショナル マッピング (ORM) ツールを使用して、データベースの結果を PHP データ型に変換することを検討できます。ただし、このアプローチでは、=== や !== などの型依存演算子を使用する場合に制限が生じる可能性があります。
以上がPHP で MySQL クエリ結果をネイティブ データ型でフェッチするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。