어떤 PHP 확장이 설치되어 있는지 확인하는 방법

어떤 PHP 확장이 설치되어 있는지 확인하는 방법

이전 서버에 설치된 램프 서버에 정확히 동일한 PHP 확장을 설치해야 합니다. 새 서버에 동일한 확장을 설치할 수 있도록 어떤 확장이 설치되어 있는지 정확히 알 수 있는 방법은 무엇입니까?

답변1

명령줄 스위치를 사용하여 어떤 모듈이 설치되어 있는지 확인할 수 -m있습니다 php.

$ php -m | head
[PHP Modules]
bz2
calendar
ctype
curl
date
dbase
dom
exif
fileinfo
...

php -i또한 이 정보가 포함된 명령줄을 통해 출력을 얻을 수도 있습니다 .phpinfo();

인용하다

답변2

확장이 실제로 사용된다면 php.ini어딘가에서 참조되어야 합니다. 확장 프로그램 로드는 매우 직관적입니다.

extension=msql.so
extension=/path/to/extension/msql.so

기타 등등

ini한 가지 주목할 점은 포함된 추가 파일에 의해 도입된 확장입니다. Debian에 대해서는 잘 모르겠지만 RHEL에는 /etc/php.d/모든 .ini파일이 홈 디렉토리에 있는 것처럼 처리되는 디렉토리가 있습니다./etc/php.ini

두 위치 중 하나(기본 파일 또는 포함된 파일 중 하나)에 없으면 php.ini확장 프로그램은 사용되지 않는 파일 시스템에 있는 것입니다.

편집하다:

사실 제가 거짓말을 한 것 같아요. 당신은해야 할 수도 있습니다PHP 파일에 dl()에 대한 호출이 있는지 확인하십시오.. 그런데 이런 확장 프로그램을 로드하는 사람이 몇 명이나 될지 궁금합니다. 사용 사례가 무엇인지 확실하지 않지만 이는 아마도 확인해야 할 또 다른 영역입니다.

답변3

Debian에서 PHP 확장은 다음 파일을 통해 로드됩니다./etc/php5/conf.d

여기에 설치할 수 있는 PHP Debian 패키지에는 두 가지 유형이 있습니다.

  • Debian PHP 패키지(php5-로 시작하는 이름)
  • PECL PHP 패키지(이름은 php-로 시작)

시스템에 두 가지를 모두 나열하려면 다음 명령을 사용할 수 있습니다. dpkg -l | dpkg -l | grep 'ii php5\?-' php- 또는 php5-로 시작하는 설치된 패키지가 나열됩니다.

PECL을 사용하여 소스에서 확장을 빌드할 수도 있습니다. 다음 사항을 나열하십시오. 곡괭이 목록

마지막으로 자신만의 확장 기능을 기존 방식으로 컴파일할 수 있습니다. 이 경우 파일이 없을 수 있습니다./etc/php5/conf.d하지만 php.ini 자체에 추가될 수도 있습니다.

모든 확장에는 일반적으로 출력 섹션이 있습니다.PHP정보();. PHP-mPHP에 로드된 확장 목록이 표시됩니다(각 확장은 phpinfo 출력에 위치해야 합니다). 더 많은 확장 프로그램이 나열됩니다.PHP-mPHP에 내장된 기본 확장과 나중에 설치할 수 있는 확장이 많기 때문에 Debian에 추가 기능 패키지로 설치하는 것보다 더 많은 출력이 있습니다.

다음은 설치된 추가 PHP 확장을 나열하는 개발 시스템의 샘플 출력입니다.

root@zaphod:~# dpkg -l | grep 'ii  php5\?-'
ii  php-auth-sasl                         1.0.4-1                            all          Abstraction of various SASL mechanism responses
ii  php-db                                1.7.14-2                           all          PHP PEAR Database Abstraction Layer
ii  php-mail                              1.2.0-4                            all          PHP PEAR module for sending email
ii  php-mail-mime                         1.8.4-1                            all          PHP PEAR module for creating MIME messages
ii  php-mail-mimedecode                   1.5.5-1                            all          PHP PEAR module to decode MIME messages
ii  php-net-smtp                          1.6.1-1                            all          PHP PEAR module implementing SMTP protocol
ii  php-net-socket                        1.0.9-2                            all          PHP PEAR Network Socket Interface module
ii  php-pear                              5.4.39-0+deb7u2                    all          PEAR - PHP Extension and Application Repository
ii  php-xml-parser                        1.3.4-6                            all          PHP PEAR module for parsing XML
ii  php5-cgi                              5.4.39-0+deb7u2                    amd64        server-side, HTML-embedded scripting language (CGI binary)
ii  php5-cli                              5.4.39-0+deb7u2                    amd64        command-line interpreter for the php5 scripting language
ii  php5-common                           5.4.39-0+deb7u2                    amd64        Common files for packages built from the php5 source
ii  php5-curl                             5.4.39-0+deb7u2                    amd64        CURL module for php5
ii  php5-dev                              5.4.39-0+deb7u2                    amd64        Files for PHP5 module development
ii  php5-gd                               5.4.39-0+deb7u2                    amd64        GD module for php5
ii  php5-imagick                          3.1.0~rc1-1+b2                     amd64        ImageMagick module for php5
ii  php5-imap                             5.4.39-0+deb7u2                    amd64        IMAP module for php5
ii  php5-intl                             5.4.39-0+deb7u2                    amd64        internationalisation module for php5
ii  php5-mcrypt                           5.4.39-0+deb7u2                    amd64        MCrypt module for php5
ii  php5-mysql                            5.4.39-0+deb7u2                    amd64        MySQL module for php5
ii  php5-pgsql                            5.4.39-0+deb7u2                    amd64        PostgreSQL module for php5
ii  php5-sqlite                           5.4.39-0+deb7u2                    amd64        SQLite module for php5
ii  php5-suhosin-extension                0.9.37-2                           amd64        advanced protection system for PHP5
ii  php5-sybase                           5.4.39-0+deb7u2                    amd64        Sybase / MS SQL Server module for php5
ii  php5-xdebug                           2.2.1-2                            amd64        Xdebug Module for PHP 5
root@zaphod:~# pecl list
Installed packages, channel pecl.php.net:
=========================================
Package  Version State
APC      3.1.13  beta
memcache 3.0.8   beta

관련 정보