How safe is Php PDO function: lastInsertId?(Php PDO 功能有多安全:lastInsertId?)
问题描述
我对 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?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:Php PDO 功能有多安全:lastInsertId?
基础教程推荐
- PHP 守护进程/worker 环境 2022-01-01
- 找不到类“AppHttpControllersDB",我也无法使用新模型 2022-01-01
- 在 CakePHP 2.0 中使用 Html Helper 时未定义的变量 2021-01-01
- 使用 PDO 转义列名 2021-01-01
- phpmyadmin 错误“#1062 - 密钥 1 的重复条目‘1’" 2022-01-01
- 如何在 XAMPP 上启用 mysqli? 2021-01-01
- Doctrine 2 - 在多对多关系中记录更改 2022-01-01
- 如何在 Symfony 和 Doctrine 中实现多对多和一对多? 2022-01-01
- 在 yii2 中迁移时出现异常“找不到驱动程序" 2022-01-01
- HTTP 与 FTP 上传 2021-01-01