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