Подтвердить что ты не робот

Как включить расширение MySQLi в php 7?

Я установил PHP 7, MySQL 5.5.47 на Ubuntu 14.04. Я проверил установленное расширение, используя:

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 скриптing 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

Я не могу видеть расширение MySQLi, используя phpinfo(), пожалуйста, дайте мне знать, как я могу включить/установить расширение MySQLi в PHP 7. Поэтому я не могу использовать phpmyadmin, в нем говорится: "Расширение mysqli отсутствует".

Примечание. Я новичок в php7.

4b9b3361

Ответ 1

Я получил решение, я могу включить расширение MySQLi в php.ini, просто раскомментировал эту строку в php.ini

extension=php_mysqli.dll

Теперь MySQLi работает хорошо. Вот путь к файлу php.ini в apache2, PHP 7, среда Ubuntu 14.04:

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

По умолчанию расширение MySQLi отключено в PHP 7.

Ответ 2

Проблема в том, что пакет, используемый для подключения PHP к MYSQL, лишен (php5-mysql). Если вы устанавливаете новый пакет:

sudo apt-get install php-mysql

Это автоматически обновит apache и php7.

Ура!

Ответ 3

sudo phpenmod mysqli
sudo service apache2 restart

  • phpenmod moduleName позволяет модулю php7 (после этого перезапустите apache sudo service apache2 restart)
  • phpdismod moduleName отключает модуль для php7 (после этого перезапустите apache sudo service apache2 restart)
  • php -m перечисляет загруженные модули

Ответ 4

В ubuntu нужно раскомментировать эту строку в php.ini, которая находится по адресу /etc/php/ 7.0/apache2/php.ini

расширение = php_mysqli.so

Ответ 5

На Ubuntu,

Когда mysqli отсутствует выполните следующее,

sudo apt-get install php7.x-mysqli

sudo service apache2 restart

замените 7.x вашей версией PHP.

примечание: это может быть 7.0 и выше, но, например, Drupal рекомендует php7.2 из соображений безопасности a.o.

Чтобы проверить версию php, введите в командной строке:

php -v

Вы делаете то же самое, если вам не хватает mbstring

apt-get install php7.x-mbstring

service apache2 restart

Мне недавно пришлось сделать это для PHPmyadmin при обновлении php с 7.0 до 7.2 на Ubuntu 16.04.

Ответ 6

Позвольте использовать

mysqli_connect

вместо

mysql_connect

потому что mysql_connect не поддерживается в php7.