tags:

views:

41

answers:

3

I want to use PDO but I'm not sure whether my hosting has set it up properly.

How can I test, in PHP, whether it is setup and working for MySQL?

A: 

Create a file that contains

<?php

phpinfo();

?>

It will show you if PDO (and other features are enabled)

DrColossos
+2  A: 

Aside from using phpinfo() to see if it's correctly listed

if (!defined('PDO::ATTR_DRIVER_NAME')) {
echo 'PDO unavailable';
}
Mark Baker
+6  A: 

PDO is always installed for php 5.1+. You can check for specific db drivers that are installed or not using phpinfo(); You could try to check for specific drivers using @Mark Baker idea and checking for specific constants;

var_dump(defined(PDO::MYSQL_ATTR_LOCAL_INFILE)); // mysql
var_dump(PDO::FB_ATTR_TIME_FORMAT)); // firebird

Note that not all drivers have specific constants defined so phpinfo() remains best solution.

Using command line you can check using:

$ php -m

As an alternative of phpinfo() you can use:

extension_loaded ('PDO' ); // returns boolean
// or
extension_loaded('pdo_mysql');
// or get all extensions and search for a specific one
get_loaded_extensions(); 
Elzo Valugi