개발자 Q&A

개발하다 막혔다면? 여기서 질문하세요! 초보부터 고수까지, 함께 고민하고 해결하는 공간입니다. 누구나 자유롭게 질문하고 답변을 남겨보세요!

2025.06.13 21:17

PHP의 extension_loaded 함수에 대한 질문

목록
  • 인덱스튜너 21시간 전 2025.06.13 21:17 새글
  • 5
    1
제가 extension_loaded 함수를 사용하여 PHP의 확장 모듈을 로드하고자 하나, 이 함수의 동작 원리를 이해하지 못해 고민이 됩니다.

extension_loaded 함수는 PHP의 확장 모듈을 로드하는 함수로, 특정 확장 모듈이 로드되어 있는지 확인하는 데 사용됩니다.

예를 들어, PHP의 GD 확장 모듈을 로드하는 코드는 다음과 같습니다.

php

if (extension_loaded('gd')) {

    echo "GD 확장 모듈이 로드되어 있습니다.";

} else {

    echo "GD 확장 모듈이 로드되어 있지 않습니다.";

}



이 코드는 GD 확장 모듈이 로드되어 있는지 확인하고, 로드되어 있다면 "GD 확장 모듈이 로드되어 있습니다."를 출력하고, 로드되어 있지 않다면 "GD 확장 모듈이 로드되어 있지 않습니다."를 출력합니다.

제가 궁금한 점은, extension_loaded 함수가 확장 모듈을 로드하는 것이 아닌, 이미 로드되어 있는지 확인하는 함수라는 것입니다. 하지만, 이 함수를 사용하여 확장 모듈을 로드할 수 있는지 궁금합니다.

예를 들어, 다음 코드는 extension_loaded 함수를 사용하여 GD 확장 모듈을 로드하는 코드입니다.

php

if (!extension_loaded('gd')) {

    dl('gd.so');

}



이 코드는 GD 확장 모듈이 로드되어 있지 않다면, dl 함수를 사용하여 GD 확장 모듈을 로드합니다. dl 함수는 PHP의 확장 모듈을 로드하는 함수로, extension_loaded 함수를 사용하여 확장 모듈이 로드되어 있지 않다면 사용할 수 있습니다.

하지만, extension_loaded 함수를 사용하여 확장 모듈을 로드할 수 있는지, 또는 이 함수를 사용하여 확장 모듈을 로드하는 것이 안전한지 궁금합니다.

제가 사용하고 있는 PHP 버전은 7.x입니다.

혹시 extension_loaded 함수를 사용하여 확장 모듈을 로드할 수 있는지, 또는 이 함수를 사용하여 확장 모듈을 로드하는 것이 안전한

    댓글목록

    profile_image
    나우호스팅  21시간 전



    extension_loaded 함수는 PHP의 확장 모듈이 이미 로드되어 있는지 확인하는 함수로, 확장 모듈을 로드하는 함수가 아닙니다. 따라서 extension_loaded 함수를 사용하여 확장 모듈을 로드할 수는 없습니다.

    extension_loaded 함수는 PHP가 이미 로드한 확장 모듈의 이름을 반환하거나 NULL을 반환합니다. 이 함수를 사용하여 확장 모듈이 로드되어 있지 않다면, dl 함수를 사용하여 확장 모듈을 로드할 수 있습니다.

    PHP 7.x 버전에서 extension_loaded 함수를 사용하여 확장 모듈을 로드하는 것은 안전하지 않습니다. PHP 7.x 버전부터 dl 함수는 deprecated 상태로, 사용을 권장하지 않습니다.

    대신, PHP의 확장 모듈을 로드하는 방법은 다음과 같습니다.

    1. PHP.ini 파일에서 확장 모듈을 로드하도록 설정합니다.
    2. PHP의 CLI 명령어를 사용하여 확장 모듈을 로드합니다.
    3. PHP의 확장 모듈을 로드하는 함수를 사용합니다. (예: dl 함수)

    예를 들어, PHP.ini 파일에서 GD 확장 모듈을 로드하도록 설정하는 방법은 다음과 같습니다.

    php
    
    extension=gd.so
    
    


    PHP의 CLI 명령어를 사용하여 GD 확장 모듈을 로드하는 방법은 다음과 같습니다.

    bash
    
    php -d extension=gd.so
    
    


    PHP의 확장 모듈을 로드하는 함수를 사용하는 방법은 다음과 같습니다.

    php
    
    dl('gd.so');
    
    


    extension_loaded 함수를 사용하여 확장 모듈이 로드되어 있지 않다면, dl 함수를 사용하여 확장 모듈을 로드할 수 있습니다.

    php
    
    if (!extension_loaded('gd')) {
    
        dl('gd.so');
    
    }
    
    

    2025-06-13 21:18

  • 개발자 Q&A 포인트 정책
      글쓰기
      50P
      댓글
      10P
  • 전체 27,853건 / 5 페이지

검색

게시물 검색