2

PHPのPDOクエリが内部で何をしているのか完全にはわかりません。それらを使用するのはまだ新しいです。これが私の質問です。これは安全ですか?

$sth = $dbh->prepare("{some sql statement}");
$sth->execute();

$sth = $dbh->prepare("{an entirely different sql statement}");
$sth->execute();

$sthこのように変数を再利用すると、問題が発生する可能性がありますか?タイミングの問題が発生する可能性があるのか​​、それとも実際に安全な方法であるのかはわかりませんでした。

4

3 に答える 3

1

並列実行されていないため、ここでは問題はありません。

于 2012-09-26T20:46:57.930 に答える
1

問題ありません、あなたはそれを再宣言しているので、前のものは破壊されます。私が見る唯一の問題は、コミットされていないデータがある場合、それを失うことです。

于 2012-09-26T20:47:03.230 に答える
1

いいえ、$sthはメモリ内のステートメントハンドラへのポインタです。2番目に準備されたクエリを割り当てることにより、最初のステートメントハンドラーにはそれ以上のポインターがなくなり、ガベージコレクターによってクリーンアップされます。

于 2012-09-26T20:47:42.043 に答える