ホームページ >データベース >mysql チュートリアル >`mysqli` プリペアドステートメント: `bind_result()` または `get_result()`?
mysqli で準備されたステートメントを使用する場合、結果をフェッチするには 2 つのオプションがあります。 :bind_result() と get_result()。これらのメソッドの違いを理解することは、データベース操作を最適化するために重要です。
bind_result() は、特定の変数をクエリ結果の列にバインドし、それらをクエリ結果の列に直接割り当てることができます。スカラー変数。これは、クエリから特定の列が必要な場合によく使用されます。
例:
$query = 'SELECT id, first_name, last_name FROM table WHERE id = ?'; $id = 5; $stmt = $mysqli->prepare($query); $stmt->bind_param('i', $id); $stmt->execute(); $stmt->store_result(); $stmt->bind_result($id, $first_name, $last_name);
長所:
短所:
get_result() は、結果全体を連想配列または列挙配列として取得し、返された行のデータが自動的に入力されます。行全体を配列として操作する必要がある場合に便利です。
例:
$query = 'SELECT * FROM table WHERE id = ?'; $id = 5; $stmt = $mysqli->prepare($query); $stmt->bind_param('i', $id); $stmt->execute(); $result = $stmt->get_result();
長所:
短所:
どちらのメソッドにも制限があります。
最適な方法は、特定の要件によって異なります。
以上が`mysqli` プリペアドステートメント: `bind_result()` または `get_result()`?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。