Archives

How to list compiled PHP Modules

Sometimes is useful to see what modules are compiled in your PHP installation.
Let’s see how we can check this both on the server/root level and on the user level.

1. On the server/root level
On the server level, you can use the command php -m

root@web [~]# php -m
[PHP Modules]
Core
ctype
curl
date
dom
filter
ftp
gd
hash
iconv
imap
ionCube Loader
json
libxml
mbstring
mcrypt
mysqli
mysqlnd
openssl
pcntl
pcre
PDO
pdo_mysql
pdo_sqlite
Phar
posix
readline
Reflection
session
SimpleXML
soap
SPL
sqlite3
standard
tokenizer
wddx
xml
xmlreader
xmlrpc
xmlwriter
xsl
Zend OPcache
zip
zlib

[Zend Modules]
Zend OPcache
the ionCube PHP Loader (enabled) + Intrusion Protection from ioncube24.com (unconfigured)

root@web [~]#

An improvement of the above command is to list the version of each module. We will use the command:

root@web [~]# php -r 'foreach (get_loaded_extensions() as $ext) echo "$ext : version " . phpversion($ext) . "\n";'
Core : version 7.0.16
date : version 7.0.16
libxml : version 7.0.16
openssl : version 7.0.16
pcre : version 7.0.16
zlib : version 7.0.16
filter : version 7.0.16
hash : version 1.0
pcntl : version 7.0.16
readline : version 7.0.16
Reflection : version 7.0.16
SPL : version 7.0.16
session : version 7.0.16
standard : version 7.0.16
ctype : version 7.0.16
curl : version 7.0.16
dom : version 20031129
ftp : version 7.0.16
gd : version 7.0.16
iconv : version 7.0.16
imap : version 7.0.16
json : version 1.4.0
mbstring : version 7.0.16
mcrypt : version 7.0.16
mysqlnd : version mysqlnd 5.0.12-dev - 20150407
PDO : version 7.0.16
Phar : version 2.0.2
posix : version 7.0.16
SimpleXML : version 7.0.16
soap : version 7.0.16
sqlite3 : version 0.7-dev
tokenizer : version 7.0.16
xml : version 7.0.16
xmlwriter : version 7.0.16
xsl : version 7.0.16
zip : version 1.13.5
mysqli : version 7.0.16
pdo_mysql : version 7.0.16
pdo_sqlite : version 7.0.16
wddx : version 7.0.16
xmlreader : version 7.0.16
xmlrpc : version 7.0.16
ionCube Loader : version
Zend OPcache : version 7.0.16
root@web [~]#

2. How to check loaded extensions as a user
Create and run a PHP file with the following content :

<?php
foreach (get_loaded_extensions() as $ext) echo “$ext : vers ” . phpversion($ext) . “</br>”;
?>

Yo will get a list of installed extensions alongside with their versions. To check if a specific extension is loaded, use the PHP function extension_loaded().

More info at PHP.net for the functions get_loaded_extensions() and extension_loaded()
Share this post: