php 数据库pdo对象,如果是返回,如以下伪代码
function getData(){
return $data;
}
$data = getData();
$id = $data->lastInsertId();
此时会获取不到,因为mysql的lastInsertId是和连接相关的,我猜想是返回后,这个数据库连接已经不是操作数据时的连接了。
解决方法
1、在返回前赋值
function getData(){
$data->id =$data->lastInsertId();
return $data;
}
2、用uuid替代lastInsertId。如果遇到多线程的问题,有可能这个id是错误的。
function getData(){
$data->uuid = getUUID();
return $data;
}