>백엔드 개발 >PHP 튜토리얼 >PHP_php 팁의 preg_match 함수에 의한 정규 매칭의 문자열 길이 문제

PHP_php 팁의 preg_match 함수에 의한 정규 매칭의 문자열 길이 문제

WBOY
WBOY원래의
2016-05-16 20:15:011381검색

프로젝트에서 preg_match를 사용하여 대상 콘텐츠를 추출하는데 문제가 있어 코드가 테스트되었습니다.

나중에 나는 PHP의 preg_match에 문자열 길이 제한이 있다고 의심했습니다. 물론, "pcre.backtrack_limit"의 값이 기본적으로 100000으로만 설정되어 있다는 것을 발견했습니다.

해결책: ini_set('pcre.backtrack_limit', 999999999);

참고: 이 매개변수는 PHP 5.2.0 버전 이후에 사용할 수 있습니다.

또한, pcre.recursion_limit에 대해서도 이야기해 보겠습니다

pcre.recursion_limit는 PCRE의 재귀 제한입니다. 이 항목을 큰 값으로 설정하면 모든 프로세스의 사용 가능한 스택이 소모되어 결국 PHP가 충돌하게 됩니다.

다음 구성을 수정하여 제한할 수도 있습니다: ini_set('pcre.recursion_limit', 99999);

실제 프로젝트 적용에서는 메모리를 제한하는 것이 가장 좋습니다. ini_set('memory_limit', '64M'); 이것이 더 안전합니다.

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