Search code examples
phpmysqli

Is mysqli extension enabled in this php configuration?


I've a website designed in php with mysqli (mysql - improved) extension. The phpinfo() page shows this:

./configure --disable-fileinfo --disable-phar --enable-bcmath --enable-calendar --enable-ftp --enable-gd-native-ttf --enable-libxml --enable-magic-quotes --enable-mbstring --enable-pdo=shared --enable-soap --enable-sockets --enable-wddx --enable-zend-multibyte --enable-zip --prefix=/usr --with-bz2 --with-curl=/opt/curlssl/ --with-curlwrappers --with-freetype-dir=/usr --with-gd --with-imap=/opt/php_with_imap_client/ --with-imap-ssl=/usr --with-jpeg-dir=/usr --with-kerberos --with-libdir=lib64 --with-libexpat-dir=/usr --with-libxml-dir=/opt/xml2 --with-libxml-dir=/opt/xml2/ --with-mcrypt=/opt/libmcrypt/ --with-mysql=/usr --with-mysql-sock=/var/lib/mysql/mysql.sock --with-mysqli=/usr/bin/mysql_config --with-openssl=/usr --with-openssl-dir=/usr --with-pcre-regex=/opt/pcre --with-pdo-mysql=shared --with-pdo-sqlite=shared --with-pic --with-png-dir=/usr --with-pspell --with-sqlite=shared --with-tidy=/opt/tidy/ --with-xmlrpc --with-xpm-dir=/usr --with-xsl=/opt/xslt/ --with-zlib --with-zlib-dir=/usr

Does this mean that mysqli extension is enabled in this configuration?


Solution

  • Should the mysqli extension be enabled then on the very same phpinfo page a "MysqlI Support | enabled" table header should appear. Look for that:

    enter image description here


    If you want to find out in a script, look for a function specific for mysqli like mysqli_connect() and than check if it exists:

    var_dump(function_exists('mysqli_connect'));
    

    If this outputs FALSE, then it does not exists and it's highly likely that you can not use the module.