>백엔드 개발 >PHP 문제 >PHP가 gd 라이브러리를 열 수 없으면 어떻게 해야 합니까?

PHP가 gd 라이브러리를 열 수 없으면 어떻게 해야 합니까?

藏色散人
藏色散人원래의
2022-11-18 10:31:532209검색

PHP가 gd 라이브러리를 열 수 없는 문제에 대한 해결 방법: 1. php.ini 구성 파일을 찾아서 엽니다. 2. "extension_dir" 앞에 있는 주석 기호 ";"를 제거합니다. ext 폴더의 경로 그게 다입니다.

PHP가 gd 라이브러리를 열 수 없으면 어떻게 해야 합니까?

이 튜토리얼의 운영 환경: Windows 7 시스템, PHP 버전 8.1, Dell G3 컴퓨터.

PHP가 gd 라이브러리를 열 수 없으면 어떻게 해야 하나요?

PHP에서 gd 라이브러리가 잘못 열리는 문제를 해결했습니다.

최근에 PHP를 다시 설치해야 했습니다. 예전에는 XAMPP를 사용했는데 기본적으로 직접 구성할 필요가 없었습니다. Apache 및 PHP의 공식 원본 버전을 직접 작성하여 구성을 상속하는 방법을 천천히 살펴보세요.

내가 다운로드한 Apache 버전은 2.2.25이고, PHP 버전은 5.4.19입니다. Apache와 PHP를 통합하고 구성한 후(PHP 설치 디렉터리: F:php5.4.19), PHP에서는 GD 라이브러리를 활성화하지 않는다는 점을 기억하세요. 기본적으로 지원을 켜야 합니다. 그래서 PHP 설치 디렉터리/php.ini 구성 파일을 열어보니 다음과 같은 내용이 있었습니다.

;extension=php_gd2.dll

인터넷에서 찾은 방법대로 주석 앞의 ";" 기호를 제거한 후 아파치 서버를 다시 시작합니다. 여전히 작동하지 않는 것으로 나타났습니다. Pass phpinfo() 함수는 여전히 GD 라이브러리와 관련된 정보를 볼 수 없습니다. 인터넷에서 "PHP에서 GD 라이브러리 열기"에 대한 많은 기사를 봤습니다. 그들은 모두 "xxx 앞의 세미콜론을 제거하십시오"라고만 말하고 더 이상의 설명이 없었습니다. 이 작업을 수행하는 것만으로는 충분하지 않다는 사실이 입증되었습니다. 적어도 PHP의 공식 zip 버전은 이와 같이 구성할 수 없습니다.

그래서 php.ini의 구성 내용을 직접 확인해야 했고 마침내 다음 줄을 발견했습니다.

;extension_dir = "ext"

분명히 Extension_dir 지시문이 주석 처리되어 PHP가 확장 프로그램의 ext 폴더를 찾을 수도 없게 되었습니다. 확장 라이브러리에서 php_gd2.dll을 찾았을 수도 있고, gd 라이브러리 지원이 당연히 켜져 있지 않을 수도 있습니다.

그래서 최선을 다해 Extension_dir 지시문 앞의 주석 기호 ";"를 제거하고 서버를 다시 시작했지만... 여전히 작동하지 않았습니다. 이것은 비과학적인 것입니다. Extension_dir 지시문의 "ext" 값에 문제가 있습니까?

PHP 관계자는 PHP5 검색 확장 라이브러리의 기본 위치가 C:php5라고 해서 공식 설명을 따르고 여전히 Extension_dir을 주석 처리한 상태로 두고 C 드라이브 아래에 새 php5 폴더를 만든 다음 php_gd2를 변경했습니다. .dll을 추가하고 서버를 다시 시작하면 결과가... 여전히 작동하지 않습니다.

이때 phpinfo() 함수를 통해 php.ini에서 Extension_dir 지시문이 활성화되지 않았을 때 phpinfo()에서 Extension_dir이 표시하는 값이 실제로는 C:php인 것을 발견했습니다. 아니면 PHP 5.4가 변경되었지만 공식 문서가 제때 업데이트되지 않았습니까? 지금은 나머지는 신경 쓰지 않습니다. 먼저 C:php를 시도해 보겠습니다. 그런 다음 php5의 이름을 php로 변경합니다. 그런 다음 서버를 다시 시작하고 phpinfo()를 통해 gd 라이브러리가 열렸는지 확인합니다. 기능. ——이것은 적어도 PHP 5.4.19에서 확장 라이브러리의 기본 검색 위치가 C:php라는 것을 증명합니다.

물론, 우리 모두 알고 있듯이, Extension_dir 명령어는 절대 경로를 지원합니다. 저는 주로 Extension_dir 명령어의 기능과 영향을 이해하기 위해 오랜 시간을 보냈습니다.

마지막으로 extension_dir 앞의 주석 기호 ";"를 제거한 후 해당 값을 ext 폴더의 절대 경로로 변경합니다.

extension_dir = "F:/php5.4.19/ext"

요약하면, php 공식 버전의 경우, gd는 라이브러리 지원을 켜야 합니다. Extension=php_gd2.dll 앞의 주석 기호를 제거할 뿐만 아니라 Extension_dir 지시어 앞의 주석 기호도 제거하고 이에 따라 해당 값을 수정합니다. 물론 gd 라이브러리만 그런 것은 아닙니다. php_mysql, php_mysqli 등 다른 PHP 확장 라이브러리를 열어야 하는 경우에도 방법은 비슷합니다.

추천 학습: "PHP 비디오 튜토리얼"

위 내용은 PHP가 gd 라이브러리를 열 수 없으면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.