[php] xdiff 확장 설치 방법
- 문자열, 문장, 문서, 코드 내용 차이점 git 처럼 diff 판별 기능
- install php xdiff extension in windows and ubuntu(linux)
https://pecl.php.net/package/xdiff
https://www.php.net/manual/en/book.xdiff.php
//-------------------------------------
< 윈도우 >
- 현재 설치된 php의 종류 판별 TS(Thread Safe) 나 NTS(Non Thread Safe) 구분 방법
> php -i|findstr "Thread"
- 다운로드
https://pecl.php.net/package/xdiff
php폴더\ext 폴더에 *.dll 파일 복사
- php.ini 파일 수정
extension=php_xdiff.dll
//=========================================================
< 우분투 Linux >
- 예) php 7.3의 경우
- libxdiff 리눅스 라이브러리 설치
wget http://www.xmailserver.org/libxdiff-0.23.tar.gz
tar -xzf libxdiff-0.23.tar.gz
cd libxdiff-0.23
./configure
make
sudo make install
//-------------------------------------
- xdiff 소스 다운로드 , (예, php 7.3의 경우)
wget https://pecl.php.net/get/xdiff-2.1.0.tgz
tar zxvf xdiff-2.1.0.tgz
cd xdiff-2.1.0
phpize
./configure
- 에러 발생 : configure: error: Please reinstall the libxdiff distribution
- 해결 방법 : libxdiff 설치
make
sudo make install
- 폴더 /usr/lib/php/20180731/xdiff.so 로 복사됨
//-------------------------------------
- php.ini 설정 파일 수정
- 설정 파일 위치
sudo nano /etc/php/7.3/cli/php.ini <=== 콘솔 명령줄
sudo nano /etc/php/7.3/fpm/php.ini <== 웹서비스 용
- 추가
extension=xdiff.so
//-------------------------------------
- fpm 과 웹서버 재시작
sudo systemctl restart php7.3-fpm <=== 중요
sudo systemctl restart nginx
//----------------------------
// 참고
How To Compile And Install PHP Extensions From Source
https://ma.ttias.be/how-to-compile-and-install-php-extensions-from-source/
xdiff-string-diff() 함수
https://www.php.net/manual/en/function.xdiff-string-diff.php