2016-02-16 59 views
35

我已經在Ubuntu 14.04上安裝了PHP 7,MySQL 5.5.47。 我已經檢查使用安裝的擴展:如何在PHP 7中啓用MySQLi擴展?

sudo apt-cache search php7-* 

它的輸出我:

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 

我不能夠使用的phpinfo(),以及看MySQLi擴展,請讓我知道,我怎麼可以啓用/在PHP 7中安裝MySQLi擴展。 這就是爲什麼我不能使用phpmyadmin,它說「mysqli擴展名缺失。」

注:我是新的php7。

回答

23

我得到了解決,我可以使在php.ini MySQLi擴展,只是註釋掉在php.ini此行

extension=php_mysqli.dll 

現在的MySQLi工作well.Here是在php.ini文件路徑的Apache2,PHP 7,Ubuntu的14.04環境:

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

默認MySQLi擴展是PHP 7

+14

'php_mysqli.dll'用於Windows。 – miken32

+0

這適用於MacPorts(macOS Sierra)。 –

+1

感謝我花了一段時間讓我的Wordpress安裝運行,因爲mysql_ *在php7中被棄用,這有助於! – Vibhu

9

禁止在Ubuntu需要註釋掉在php.ini這條線其位於/etc/php/7.0/apache2/php.ini

延長= php_mysqli.so

+4

這行不是在Ubuntu 16.04的php.ini中。添加它? – motorbaby

+0

at php 7.0可以運行phpenmode youModule.ini – Kasikn77

59

的問題是,與用於PHP連接MySQL包裝被depricated(PHP5-MySQL的)。如果你安裝了新的軟件包:

sudo apt-get install php-mysql 

這會自動更新apache和php7。

乾杯!

+7

這是Ubuntu(16.04)的正確答案。之後重新啓動apache:'sudo service apache2 restart' – scoobydoo

+1

記得在'sudo apt-get update'之前。 –

+0

謝謝Xeno。這是Ubuntu(16.04),PHP 7.1 @scoobydoo的正確答案。此後重新啓動Apache。 – Riz

3
sudo phpenmod mysqli 
sudo service apache2 restart