PHP PDO:设置 FireBird 连接超时

Rob*_*Rob 4 php firebird pdo timeout

我正在连接到 FireBird 数据库,该数据库在线时工作正常。当服务器离线时,用户会收到最大执行时间已过错误。

因此我想用 try catch 包围连接语句并将超时设置为 10 秒。但我找不到合适的属性来这样做。默认的ATTR_TIMEOUT似乎不起作用。谁能告诉我 PDO 和 FireBird 是否可以实现这一点?

ain*_*ain 5

不确定 PHP / PDO,但ConnectionTimeoutfirebird.conf 文件中有参数您可以尝试。默认值为 180 秒(引用自conf文件):

# ----------------------------
# Client Connection Settings (Basic)
#
# Seconds to wait before concluding an attempt to connect has failed.
#
# Type: integer
#
#ConnectionTimeout = 180
Run Code Online (Sandbox Code Playgroud)

如果您的 FireBird 服务器与运行 PHP 脚本的服务器不在同一台服务器上,并且“PHP 服务器”上没有 firebird.conf 文件,请尝试将其放入 fbclient dll 所在的同一目录中。或者如果FIREBIRD定义了环境变量,则进入var指向的目录。