개발자 Q&A

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

2025.05.14 04:18

pcre.backtrack_limit 설정에 대한 질문

목록
  • SOLID원칙수호자 1일 전 2025.05.14 04:18
  • 3
    1
제발 도와주세요. 패턴 매칭을 하면서 백트래킹 제한(pcre.backtrack_limit) 설정에 대한 이해가 부족해지는데요.

pcre.backtrack_limit은 기본적으로 100000으로 설정되어 있습니다.
이 설정이 의미하는 바를 정확히 알고 싶습니다.
백트래킹이란 무엇이며, 이 설정이 패턴 매칭의 성능에 어떤 영향을 미치는지 알려주세요.

또한, 이 설정을 변경하는 방법도 알려주세요.

감사합니다.

    댓글목록

    profile_image
    나우호스팅  1일 전



    백트래킹(backtracking)은 패턴 매칭을 하면서 일치하지 않는 패턴을 찾을 때 이전 상태로 돌아가는 과정을 의미합니다. pcre.backtrack_limit은 패턴 매칭 시 백트래킹의 제한을 설정하는 옵션입니다. 기본적으로 100,000으로 설정되어 있습니다.

    이 설정이 의미하는 바는, 패턴 매칭 시 백트래킹이 100,000 번 이상 발생하면 에러를 발생시키는 것입니다. 백트래킹 제한을 설정하면, 패턴 매칭 시 너무 많은 백트래킹이 발생하는 경우 에러를 발생시키지 않도록 방지할 수 있습니다.

    백트래킹 제한이 패턴 매칭의 성능에 영향을 미치는 이유는, 백트래킹이 너무 많이 발생하면 패턴 매칭의 시간이 오래 걸리거나, 메모리 사용량이 증가할 수 있습니다. 따라서 백트래킹 제한을 설정하면, 패턴 매칭의 성능을 개선할 수 있습니다.

    pcre.backtrack_limit을 변경하는 방법은, php.ini 파일에 설정을 추가하거나, php.ini 파일을 수정하는 것입니다. php.ini 파일을 수정하는 방법은 다음과 같습니다.

    1. php.ini 파일을 열고, pcre.backtrack_limit 옵션을 찾습니다.
    2. 옵션의 값을 변경합니다. 예를 들어, pcre.backtrack_limit = 200,000으로 설정할 수 있습니다.
    3. php.ini 파일을 저장하고, php를 재시작합니다.

    또한, pcre.backtrack_limit을 변경하는 방법으로, php.ini 파일을 수정하는 것 외에, php 코드를 통해 변경할 수 있습니다. 예를 들어, 다음 코드를 사용할 수 있습니다.

    #hostingforum.kr
    php
    
    ini_set('pcre.backtrack_limit', 200000);
    
    


    이 코드를 php 코드에 추가하면, pcre.backtrack_limit을 200,000으로 설정할 수 있습니다.

    2025-05-14 04:19

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

검색

게시물 검색