У меня есть класс, который принимает существующее PDO
соединение в конструкторе:Получить текущий драйвер PDO из существующего соединения?
class Foo {
public function __construct(\PDO $conn = NULL) {
// ...
}
// ...
}
Мой вопрос: есть ли способ, чтобы определить, какой драйвер существующего PDO
соединения в настоящее время используется (предпочтительно из списка found here)? Я не видел ничего в документации API.
Для любопытных, я хотел бы знать, какой драйвер используется, поскольку функциональность в моем классе специфична для базы данных, поэтому я хотел бы проверить, что переданное ему соединение имеет правильный тип ,
Спасибо. Я считаю, что это сработает. Не похоже, что значения, возвращаемые этим, - это те, которые перечислены на странице доступных драйверов (хотя, например, я вижу строку «oci», возвращенную для Oracle 10g, вместо ожидаемого «PDO_OCI», как указано на этом страница). – FtDRbwLXw6
@drrcknlsn, Это потому, что имена, перечисленные на этой странице, не являются настоящими именами. Используйте http://www.php.net/manual/en/pdo.getavailabledrivers.php, чтобы получить настоящие имена. – Brad