$stmt->free_result()
結果セットに関連するメモリを解放しますが、$stmt->close()
プリペアドステートメントに関連するメモリを解放します。続いて$stmt->close()
を呼び出します まだ残っている結果はキャンセルされます。
本質的には、$stmt->close()
を呼び出します $stmt->free_result()
を呼び出すのと同じ効果があります 結果セットもキャンセルするためです。ただし、$stmt->free_result()
を呼び出す プリペアドステートメントで使用されているメモリはクリアされません。その場合は、$stmt->close()
を使用する必要があります。 。
どちらを使用するかについては、初期化したプリペアドステートメントを使用するつもりであるが、現在の結果セットは必要なくなった場合があります。このような場合、$stmt->close()
の呼び出しを待つことになります。 プリペアドステートメントが完了するまで、代わりに$stmt->free_result()
を呼び出します。 別のステートメントを実行する前に。