如何在php 7中启用MySQLi扩展?

I have installed PHP 7, MySQL 5.5.47 on Ubuntu 14.04. I have checked installed extension using :

sudo apt-cache search php7-*

Its output me:

php7.0-common - Common files for packages built from the PHP source
libapache2-mod-php7.0 - server-side, HTML-embedded scripting language (Apache 2 module)
php7.0-cgi - server-side, HTML-embedded scripting language (CGI binary)
php7.0-cli - command-line interpreter for the PHP scripting language
php7.0-phpdbg - server-side, HTML-embedded scripting language (PHPDBG binary)
php7.0-fpm - server-side, HTML-embedded scripting language (FPM-CGI binary)
libphp7.0-embed - HTML-embedded scripting language (Embedded SAPI library)
php7.0-dev - Files for PHP7.0 module development
php7.0-dbg - Debug symbols for PHP7.0
php7.0-curl - CURL module for PHP
php7.0-enchant - Enchant module for PHP
php7.0-gd - GD module for PHP
php7.0-gmp - GMP module for PHP
php7.0-imap - IMAP module for PHP
php7.0-interbase - Interbase module for PHP
php7.0-intl - Internationalisation module for PHP
php7.0-ldap - LDAP module for PHP
php7.0-mcrypt - libmcrypt module for PHP
php7.0-readline - readline module for PHP
php7.0-odbc - ODBC module for PHP
php7.0-pgsql - PostgreSQL module for PHP
php7.0-pspell - pspell module for PHP
php7.0-recode - recode module for PHP
php7.0-snmp - SNMP module for PHP
php7.0-tidy - tidy module for PHP
php7.0-xmlrpc - XMLRPC-EPI module for PHP
php7.0-xsl - XSL module for PHP
php7.0 - server-side, HTML-embedded scripting language (metapackage)
php7.0-json - JSON module for PHP
php-all-dev - package depending on all supported PHP development packages
php7.0-sybase - Sybase module for PHP
php7.0-sqlite3 - SQLite3 module for PHP
php7.0-mysql - MySQL module for PHP
php7.0-opcache - Zend OpCache module for PHP
php7.0-bz2 - bzip2 module for PHP

I am not able to see MySQLi extension using phpinfo() as well,please let me know,how can I enable/install MySQLi extension in PHP 7. That's why I cannot use phpmyadmin, its says "The mysqli extension is missing."

Note: I am new in php7.

I got the solution,I am able to enable MySQLi extension in php.ini, just uncommented this line in php.ini

extension=php_mysqli.dll

Now MySQLi working well.Here is php.ini file path in apache2,PHP 7, Ubuntu 14.04 environment:

/etc/php/7.0/apache2/php.ini

By Default MySQLi extension is disable in PHP 7.

In ubuntu need to uncommented this line in php.ini which is located at /etc/php/7.0/apache2/php.ini

extension=php_mysqli.so

The problem is that the package that used to connect PHP to MYSQL is depricated (php5-mysql). If you install the new package:

sudo apt-get install php-mysql

This will automatically update apache and php7.

Cheers!

sudo phpenmod mysqli
sudo service apache2 restart

  • phpenmod moduleName enables a module to php7 (restart apache after that sudo service apache2 restart)
  • phpdismod moduleName disables a module to php7 (restart apache after that sudo service apache2 restart)
  • php -m lists the loaded modules

Let's use

mysqli_connect

instead of

mysql_connect

because mysql_connect isn't supported in php7.

On ubuntu,

When mysqli is missing execute the following,

sudo apt-get install php7.x-mysqli

sudo service apache2 restart

replace 7.x with your PHP version.

note: This could be 7.0 and up, but for example Drupal recommends 'php7.2' on grounds of security a.o.

To check your php version, on the command-line type:

php -v

You do exactly the same if you are missing mbstring

apt-get install php7.x-mbstring

service apache2 restart

I recently had to do this for PHPmyadmin when upgrading php from 7.0 to 7.2 on Ubuntu 16.04 .