programing

PHP 7에서 MySQLi 확장을 활성화하는 방법은 무엇입니까?

luckcodes 2021. 1. 16. 20:30

PHP 7에서 MySQLi 확장을 활성화하는 방법은 무엇입니까?


Ubuntu 14.04에 PHP 7, MySQL 5.5.47을 설치했습니다. 다음을 사용하여 설치된 확장을 확인했습니다.

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에서 처음입니다.


문제는 PHP를 MYSQL에 연결하는 데 사용 된 패키지가 더 이상 사용되지 않는다는 것입니다 (php5-mysql). 새 패키지를 설치하는 경우 :

sudo apt-get install php-mysql

그러면 자동으로 아파치와 php7이 업데이트됩니다.

건배!


솔루션을 얻었습니다. php.ini에서 MySQLi 확장을 활성화 할 수 있습니다. php.ini에서이 줄의 주석 처리를 제거했습니다.

extension=php_mysqli.dll

이제 MySQLi가 잘 작동합니다. 다음은 apache2, PHP 7, Ubuntu 14.04 환경의 php.ini 파일 경로입니다.

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

기본적으로 MySQLi 확장은 PHP 7에서 비활성화됩니다.


sudo phpenmod mysqli
sudo service apache2 restart

  • phpenmod moduleName모듈을 php7로 활성화 (그 후에 아파치를 다시 시작하십시오 sudo service apache2 restart)
  • phpdismod moduleNamephp7에 대한 모듈을 비활성화합니다 (그 후에 아파치를 다시 시작하십시오 sudo service apache2 restart)
  • php -m 로드 된 모듈을 나열합니다.

우분투에서는 /etc/php/7.0/apache2/php.ini에있는 php.ini에서이 줄의 주석 처리를 제거해야합니다.

extension = php_mysqli.so


우분투에서는

mysqli가 없으면 다음을 실행하십시오.

sudo apt-get install php7.x-mysqli

sudo service apache2 restart

7.xPHP 버전으로 교체 하십시오.

참고 : 이것은 7.0 이상일 수 있지만 예를 들어 Drupal은 보안을 이유로 'php7.2'를 권장합니다.

PHP 버전을 확인하려면 명령 줄에 다음을 입력하십시오.

php -v

mbstring이 누락 된 경우 정확히 동일하게 수행합니다.

apt-get install php7.x-mbstring

service apache2 restart

최근에 Ubuntu 16.04에서 php를 7.0에서 7.2로 업그레이드 할 때 PHPmyadmin에 대해이 작업을 수행해야했습니다.


사용하자

mysqli_connect

대신에

mysql_connect

php7mysql_connect 에서 지원되지 않기 때문 입니다 .

ReferenceURL : https://stackoverflow.com/questions/35424982/how-to-enable-mysqli-extension-in-php-7