phpday 2022

PDO::getAvailableDrivers

pdo_drivers

(PHP 5 >= 5.1.0, PHP 7, PHP 8, PECL pdo >= 1.0.3)

PDO::getAvailableDrivers -- pdo_drivers 利用可能な PDO ドライバの配列を返す

説明

public static PDO::getAvailableDrivers(): array
pdo_drivers(): array

この関数は、PDO::__construct()DSN パラメータで利用可能な全ての有効な PDO ドライバを返します。

パラメータ

この関数にはパラメータはありません。

戻り値

PDO::getAvailableDrivers() は PDO ドライバ名の配列を返します。 もしドライバが何も利用できない場合、空の配列を返します。

例1 PDO::getAvailableDrivers() の例

<?php
print_r
(PDO::getAvailableDrivers());
?>

上の例の出力は、 たとえば以下のようになります。

Array
(
    [0] => mysql
    [1] => sqlite
)

add a note add a note

User Contributed Notes 1 note

up
6
iabdullah
7 years ago
Since the method is a static, one practice is using it to check whether a specific server database driver is available and configured correctly with PDO before establishing the connection:
<?php
try {
    if (!
in_array("mysql",PDO::getAvailableDrivers(),TRUE))
    {
        throw new
PDOException ("Cannot work without a proper database setting up");
    }
}
catch (
PDOException $pdoEx)
{
    echo
"Database Error .. Details :<br /> {$pdoEx->getMessage()}";
}
?>

or to check for any driver in general:
<?php
   
if (empty(PDO::getAvailableDrivers()))
    {
        throw new
PDOException ("PDO does not support any driver.");
    }
?>
To Top