> 백엔드 개발 > PHP 문제 > PHP에 확장 기능을 설치하는 방법

PHP에 확장 기능을 설치하는 방법

醉折花枝作酒筹
풀어 주다: 2023-03-11 17:44:02
앞으로
2903명이 탐색했습니다.

WorkerMan은 PHP 명령줄 PHP CLI를 기반으로 실행되며 다양한 PHP 실행 프로그램을 사용합니다. 오늘은 확장 프로그램 설치 방법에 대해 설명하겠습니다.

PHP에 확장 기능을 설치하는 방법

확장 프로그램 설치

참고

Apache+PHP 또는 Nginx+PHP의 실행 모드와 달리 WorkerMan은 PHP 명령줄 PHP CLI를 기반으로 실행되며 다른 PHP 실행 프로그램을 사용합니다. ini 파일도 다를 수 있습니다. 따라서 웹 페이지에서 phpinfo()를 인쇄하여 확장 기능이 설치되어 있다고 해서 명령줄의 PHP CLI에 해당 확장 기능도 설치되어 있다는 의미는 아닙니다.

PHP CLI로 설치된 확장 프로그램을 확인하는 방법

php -m을 실행하면 명령줄 PHP CLI로 설치된 확장 프로그램이 나열됩니다. 결과는 다음과 유사합니다.

~# php -m
[PHP Modules]
libevent
posix
pcntl
...
로그인 후 복사

위치를 확인하는 방법. PHP CLI의 php.ini 파일

확장 기능을 설치할 때 php.ini 파일을 수동으로 구성하고 확장 기능을 추가해야 할 수도 있으므로 PHP CLI의 php.ini 파일 위치를 확인해야 합니다. . php --ini를 실행하여 PHP CLI의 ini 파일 위치를 찾을 수 있습니다. 결과는 다음과 유사합니다(시스템마다 표시되는 결과는 다를 수 있음).

~# php --ini
Configuration File (php.ini) Path: /etc/php5/cli
Loaded Configuration File:         /etc/php5/cli/php.ini
Scan for additional .ini files in: /etc/php5/cli/conf.d
Additional .ini files parsed:      /etc/php5/cli/conf.d/apc.ini,
/etc/php5/cli/conf.d/libevent.ini,
/etc/php5/cli/conf.d/memcached.ini,
/etc/php5/cli/conf.d/mysql.ini,
/etc/php5/cli/conf.d/pdo.ini,
/etc/php5/cli/conf.d/pdo_mysql.ini
...
로그인 후 복사

PHP CLI용 확장 설치(memcached 설치) 확장 프로그램 예시)

방법 1. apt 또는 yum 명령을 사용하여 설치

PHP가 apt 또는 yum 명령을 통해 설치되면 확장 프로그램은 apt 또는 yum

debian/ubuntu 및 기타 시스템 apt 설치를 통해서도 설치할 수 있습니다. PHP 확장 방법(루트가 아닌 사용자는 sudo 명령을 추가해야 함)

1. apt-cache 검색을 사용하여 확장 패키지

~# apt-cache search memcached php
php-apc - APC (Alternative PHP Cache) module for PHP 5
php5-memcached - memcached module for php5
로그인 후 복사

2를 찾습니다. apt-get install을 사용하여 확장 패키지

~# apt-get install -y php5-memcached
Reading package lists... Done
Reading state information... Done
...
로그인 후 복사

Centos 및 기타 시스템을 설치합니다. yum 설치 PHP 확장 방법

1. yum 검색을 사용하여 확장 패키지

~# yum search memcached php
php-pecl-memcached - memcached module for php5
로그인 후 복사

를 찾습니다. 2. yum install을 사용하여 확장 패키지

~# yum install -y php-pecl-memcached
Reading package lists... Done
Reading state information... Done
...
로그인 후 복사

를 설치합니다. 지침:

apt 또는 yum을 사용하여 PHP 확장을 설치하면 자동으로 PHP가 구성됩니다. .ini 파일을 설치 후 바로 사용할 수 있어 매우 편리합니다. 단점은 일부 확장의 경우 apt 또는 yum에 해당 확장 설치 패키지가 없다는 것입니다.

방법 2. pecl을 사용하여 설치

pecl install 명령을 사용하여 확장 프로그램을 설치합니다

1. pecl install을 사용하여 설치

~# pecl install memcached
downloading memcached-2.2.0.tgz ...
Starting to download memcached-2.2.0.tgz (70,449 bytes)
....
로그인 후 복사

2를 구성합니다. php.ini 파일의 위치를 ​​찾습니다. php --ini를 실행한 후 파일에 Extension=memcached.so를 추가합니다

방법 3. 소스 코드 컴파일 및 설치 (일반적으로 PHP에 포함된 확장 프로그램을 설치합니다. pcntl 확장 프로그램 설치를 예로 들어 보겠습니다.)

1. php -v 명령을 사용하여 현재 PHP CLI 버전

~# php -v
PHP 5.3.29-1~dotdeb.0 with Suhosin-Patch (cli) (built: Aug 14 2014 19:55:20)
Copyright (c) 1997-2014 The PHP Group
Zend Engine v2.3.0, Copyright (c) 1998-2014 Zend Technologies
로그인 후 복사

2을 확인하세요. 버전에 따라 PHP 소스 코드를 다운로드하세요

PHP 과거 버전 다운로드 페이지: http://php.net/releases/

3. 소스코드 압축 패키지를 풀어주세요

예를 들어, 다운로드한 압축 패키지 이름은 php-5.3.29.tar.gz

~# tar -zxvf php-5.3.29.tar.gz
php-5.3.29/
php-5.3.29/README.WIN32-BUILD-SYSTEM
php-5.3.29/netware/
...
로그인 후 복사

4 입니다. 소스코드에 ext/pcntl 디렉토리를 입력하세요

~# cd php-5.3.29/ext/pcntl/
로그인 후 복사

5. phpize 명령

~# phpize
Configuring for:
PHP Api Version:         20090626
Zend Module Api No:      20090626
Zend Extension Api No:   220090626
로그인 후 복사

6. 구성 명령

~# ./configure
checking for grep that handles long lines and -e... /bin/grep
checking for egrep... /bin/grep -E
...
로그인 후 복사

7을 실행합니다. make 명령

~# make
/bin/bash /tmp/php-5.3.29/ext/pcntl/libtool --mode=compile cc ...
-I/usr/include/php5 -I/usr/include/php5/main -I/usr/include/php5/TSRM -I/usr/include/php5/Zend...
...
로그인 후 복사

을 실행합니다. 9. ini 파일을 구성합니다. php.ini 파일의 위치를 ​​찾습니다. php --ini를 실행한 다음 파일에 Extension=pcntl.so를 추가하세요

참고: 이 방법은 일반적으로 posix 확장 및 pcntl 확장과 같은 PHP 확장을 설치하는 데 사용됩니다. phpize를 사용하여 확장 기능을 컴파일하는 것 외에도 전체 PHP를 다시 컴파일하고 컴파일 중에 매개 변수를 사용하여 확장 기능을 추가할 수도 있습니다. 예를 들어 소스 코드 루트 디렉터리

~# make install
Installing shared extensions:     /usr/lib/php5/20090626/
로그인 후 복사

방법 4. phpize 설치

설치할 확장은 php 소스 코드에 있습니다. ext 디렉토리에 없으면 이 확장은 http://pecl.php.net

에서 검색하여 다운로드해야 합니다. libevent 확장 설치를 예로 들어 보겠습니다(가정) 시스템에 libevent-dev 라이브러리가 설치되어 있는지 확인)1. libevent 확장 파일 압축 패키지를 다운로드합니다(원하는 대로 현재 시스템의 디렉터리 다운로드에서). . 소스 코드 디렉토리

~# ./configure --enable-pcntl --enable-posix ...
~# make && make install
로그인 후 복사

4를 실행합니다. phpize 명령

~# wget http://pecl.php.net/get/libevent-0.1.0.tgz
--2015-05-26 21:43:40--  http://pecl.php.net/get/libevent-0.1.0.tgz
Resolving pecl.php.net... 104.236.228.160
Connecting to pecl.php.net|104.236.228.160|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 9806 (9.6K) [application/octet-stream]
Saving to: “libevent-0.1.0.tgz”

100%[=======================================================>] 9,806       41.4K/s   in 0.2s
로그인 후 복사

6을 실행합니다. make 명령을 실행합니다.

~# tar -zxvf libevent-0.1.0.tgz
package.xml
libevent-0.1.0/config.m4
libevent-0.1.0/CREDITS
libevent-0.1.0/libevent.c
....
로그인 후 복사

8. ini 파일

php --ini를 실행하여 php.ini 파일의 위치를 ​​찾은 다음 파일에 확장자=libevent.so를 추가하세요

권장 학습:

php 비디오 튜토리얼

위 내용은 PHP에 확장 기능을 설치하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
php
원천:csdn.net
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿