Как включить расширение 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.
Ответы
Ответ 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.