Existe-t-il une commande PHP que je peux utiliser pour déterminer si PDO est activé ou désactivé?
Je sais que je lance manuellement phpinfo () et le globe oculaire, mais j'ai un script que je lance divers serveurs Web qui affichent les paramètres de configuration sélectionnés PHP pour le serveur).
Je cherche donc à voir s'il existe une commande que je peux utiliser.
Vérifiez si la classe existe:
if (class_exists('PDO'))
J'apprécie le soutien et tous les votes positifs que j'obtiens encore, mais veuillez vérifier réponse de Salman Abbas pour la bonne façon de le faire .
La bonne façon de déterminer qui utilisera la fonction extension_loaded: -
if ( extension_loaded('pdo') ) {
.......
}
Et vous pouvez également vouloir vérifier le pilote PDO spécifique à la base de données en utilisant: -
if ( extension_loaded('pdo_<database type here>') ) { // e.g., pdo_mysql
.......
}
Exécutez simplement la commande comme php -m à partir de l'invite de commande qui affichera la liste des modules installés pour PHP
Vous avez deux options:
if (extension_loaded('pdo')) { /* ... */ }
Ou (celui-ci n'est pas fiable à 100% car il peut être implémenté dans des classes d'utilisateurs):
if (class_exists('PDO', false)) { /* ... */ }
Personnellement, je préfère la première option.
if (!defined('PDO::ATTR_DRIVER_NAME')) {
echo 'PDO unavailable';
}
elseif (defined('PDO::ATTR_DRIVER_NAME')) {
echo 'PDO available';
}
J'espère que ça marche
Que diriez-vous
if (in_array('pdo', get_loaded_extensions())) {
... pdo is there ...
}
Une option qui fonctionne pour n'importe quel module est
php -i | grep -i "Your module name"
Cela vous permet de savoir si votre module est activé ou non, mais vous devez toujours l'essayer.