• 首页
  • vue
  • TypeScript
  • JavaScript
  • scss
  • css3
  • html5
  • php
  • MySQL
  • redis
  • jQuery
  • PDO::getAvailableDrivers()

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

    返回一个可用驱动的数组

    说明

    staticPDO::getAvailableDrivers(void): array
    pdo_drivers(void): array

    此函数(方法)返回所有当前可用在PDO::__construct()的参数$DSN中的 PDO 驱动。

    返回值

    PDO::getAvailableDrivers()返回一个包含可用 PDO 驱动名字的数组。如果没有可用的驱动,则返回一个空数组。

    范例

    一个PDO::getAvailableDrivers()的例子

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

    以上例程的输出类似于:

    Array
    (
        [0] => mysql
        [1] => sqlite
    )
    
    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.");
      }
    ?>
    
    /*
     * Coder : PamukBilisim
     * Date : 02/02/2014
     */
    function getDriverList($ayrac = ",", $echo = true){
     
    $ARR_DRIVERS = array();
    $CountDrivers = 0;
    foreach(PDO::getAvailableDrivers() AS $DRIVERS) :
       
      $CountDrivers++;
      $ARR_DRIVERS[$CountDrivers] = $DRIVERS;
     
    endforeach;
     
    $_GET_DRIVER_LIST = implode($ayrac, $ARR_DRIVERS);
     
    if( $echo ): echo $_GET_DRIVER_LIST; else : return $_GET_DRIVER_LIST; endif;
     
    }
    Example :
    echo "Kullanabileceğiniz pdo veritabanları : " . getDriverList(" , ", false);