Tuesday, May 15, 2012

How to determine if PDO enabled in PHP


Is there a PHP command I can use to determine if PDO is enabled or disabled?



I know I an manually run phpinfo() and eyeball it, but I have a script I run a various servers that displays selected PHP configuration settings for the server.



So I am looking to see if there is a command I can use.



Thanks.


Source: Tips4all

5 comments:

  1. Check if the class exists:

    if (class_exists('PDO'))

    ReplyDelete
  2. The proper way of determining that will be using the extension_loaded function:-

    if ( extension_loaded('pdo') ) {
    .......
    }


    And you might also want to check for the database-specific PDO driver using:-

    if ( extension_loaded('pdo_<database type here>') ) {
    .......
    }

    ReplyDelete
  3. You have two options:

    if (extension_loaded('pdo')) { /* ... */ }


    Or (this one is not 100% reliable since it can be implemented in user-land classes):

    if (class_exists('PDO', false)) { /* ... */ }


    Personally, I prefer the first option.

    ReplyDelete
  4. How about

    if (in_array('pdo', get_loaded_extensions())) {
    ... pdo is there ...
    }

    ReplyDelete
  5. if (!defined('PDO::ATTR_DRIVER_NAME')) {
    echo 'PDO unavailable';
    }
    elseif (defined('PDO::ATTR_DRIVER_NAME')) {
    echo 'PDO available';
    }


    I hope this works

    ReplyDelete