찾다

 >  Q&A  >  본문

DOMDocument를 사용하도록 PHP가 올바르게 구성되었는지 올바르게 확인하는 방법은 무엇입니까?

<p>DOMDocument를 사용하는 스크립트가 있습니다. 일부 환경에서는 모듈이 로드되지 않았기 때문에 실패합니다. 제가 하고 싶은 것은 이 스크립트 사용자에게 이 문제를 해결하기 위한 지침을 제공하는 것입니다. </p><p>다음은 문제를 재현하기 위한 최소한의 스크립트입니다.</p><p><br /></p> <pre class="brush:php;toolbar:false;"><?php 에코 '시작!'; 노력하다 { $doc = 새로운 DOMDocument(); } 잡기(예외 $e) { 에코 '잡았어'; } 에코 '끝'; ?></pre> <p> 브라우저(Nginx와 관련된 현재 서버에서 제공)에서 열면 "start!"만 표시됩니다(반환 코드 500, try..catch를 생략하면 출력이 동일함). 따라서 문제는 올바른 모듈이 설치되었는지 여부를 감지하는 것뿐만 아니라(확인하려면 Extension_loaded('dom')을 사용해야 할까요?) try..catch가 작동하지 않는 것 같습니다(나는 출력; 현재 경우에는 PHP 7.4.3을 사용하고 있습니다. <br /><br />이 상황을 적절하게 처리하는 방법에 대한 제안 사항이 있습니까?


P粉898049562P粉898049562486일 전500

모든 응답(2)나는 대답할 것이다

  • P粉973899567

    P粉9738995672023-07-31 16:50:19

    클래스를 찾을 수 없으면 오류가 발생합니다. 이 클래스는 Exception을 상속하지 않으므로 코드에서 이를 포착할 수 없습니다.

    다음 코드는 이 문제를 해결할 수 있습니다:


    으아악

    또는:

    으아악

    물론 Extension_loaded('dom')을 직접 사용하여 확장 프로그램 사용 가능 여부를 확인할 수 있습니다.

    회신하다
    0
  • P粉546257913

    P粉5462579132023-07-31 16:03:24

    class_exists() 함수를 사용하여 클래스가 존재하는지 테스트할 수 있습니다. 예:


    으아악

    회신하다
    0
  • 취소회신하다