我对 Php PDO 函数有点困惑:lastInsertID.如果我理解正确,它会返回插入到数据库中的最后一个自动增量 ID.
I have little confusion about the Php PDO function: lastInsertID. If I understand correctly, it returns the last auto-incremental id that was inserted in the database.
当我在创建注册用户的功能时执行在我的数据库中插入用户的查询时,我通常会使用此函数.
I usually use this function when I execute a query that inserts a user in my database when I am creating the functionality of registering a user.
我的问题是,例如,我有一百个人同时在我的网站上注册.并且可能是一个用户在另一个用户之后一毫秒点击了注册"按钮.那么这个函数lastInsertId是否有可能返回另一个刚刚注册的用户的id?
My question is that say I have a hundred people registering on my site at one point for example. And may be one user hit the 'Register' button a millisecond after another user. Then is there a chance that this function lastInsertId will return the id of another user that register just momentarily earlier?
可能是我想问的是服务器是否一次处理一个请求并一次处理一个 php 文件?
May be what I am trying to ask is does the server handle one request at a time and go through a php file one at a time?
请告诉我这件事.
谢谢.
完全安全.没有竞争条件.它只从进行插入的 pdo 对象返回最后插入的 Id.
Perfectly safe. There is no race condition. It only returns the last inserted Id from the pdo object that made the insert.
这篇关于Php PDO 功能有多安全:lastInsertId?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持html5模板网!
MySQLi准备好的语句&foreach 循环MySQLi prepared statement amp; foreach loop(MySQLi准备好的语句amp;foreach 循环)
mysqli_insert_id() 是从整个服务器还是从同一用户获Is mysqli_insert_id() gets record from whole server or from same user?(mysqli_insert_id() 是从整个服务器还是从同一用户获取记录?)
PHP MySQLi 无法识别登录信息PHP MySQLi doesn#39;t recognize login info(PHP MySQLi 无法识别登录信息)
mysqli_select_db() 需要 2 个参数mysqli_select_db() expects exactly 2 parameters(mysqli_select_db() 需要 2 个参数)
Php mysql pdo 查询:用查询结果填充变量Php mysql pdo query: fill up variable with query result(Php mysql pdo 查询:用查询结果填充变量)
MySQLI 28000/1045 用户“root"@“localhost"的访问MySQLI 28000/1045 Access denied for user #39;root#39;@#39;localhost#39;(MySQLI 28000/1045 用户“root@“localhost的访问被拒绝)