walkor / GatewayWorker

Distributed realtime messaging framework based on workerman.
MIT License
1.01k stars 296 forks source link

DbConnection类在php8中数字占位报错 SQLSTATE[HY093]: Invalid parameter number #88

Open ttlxihuan opened 2 years ago

ttlxihuan commented 2 years ago

生产环境使用php-8.1.2时数字序号占位绑定报错,经排查调整需要在 DbConnection::execute 方法下进行类型转换,并且catch块处理有点问题,PDOException::$errorInfo 只有一个元素。

if ($parameters[0][0] !== ':') { $parameters[0] = intval($parameters[0]); }

完整代码: /**

walkor commented 2 years ago

这个类不维护了,因为有些老项目还在用所以没后删除。如果你还想用这个Db类可以发个PR我这边合并。

ttlxihuan commented 2 years ago

我也是老项目在使用,最近升级PHP后就出问题了,我已经发了PR,