早上好, 我想知道PHP prepare语句是同步还是异步,例如:
$req1 = "UPDATE ...";
$statement1 = $connection->prepare($req1);
$statement1->execute();
$req2 = "SELECT ...";
$statement2 = $connection->prepare($req2);
$statement2->execute();
所以第二个请求的结果取决于第一个,它可能会导致问题或错误的结果,换句话说,第二个请求可能会在第一个请求之前执行。
我搜索了答案,但我找不到明确的答案。 谢谢你。
答案 0 :(得分:4)
数据库查询是同步执行的。但请不要相信我的话,请查看手册:
PDO: http://php.net/manual/en/pdostatement.execute.php
由于方法结果在成功时为TRUE,在失败时为FALSE,因此可以推断它是同步的。
MySQLi: http://php.net/manual/en/mysqli-stmt.execute.php
同样在这里。因此,请检查文档,如果execute()返回与结果相关的内容,您知道它必须是同步的。