208 of 410 menu

preg_last_error 함수

preg_last_error 함수는 정규식 관련 함수 작업 중 발생한 마지막 오류의 코드를 반환합니다. preg_matchpreg_replace와 같은 함수가 false를 반환할 때 정규식을 디버깅하는 데 유용합니다. 함수는 매개변수를 받지 않습니다.

함수는 정수형 오류 코드를 반환합니다. 편의를 위해 오류 코드를 특수 상수와 비교할 수 있습니다 (아래 표 참조).

구문

preg_last_error(): int;

오류 상수 표

상수 설명
PREG_NO_ERROR 0 오류가 발생하지 않음
PREG_INTERNAL_ERROR 1 PCRE 내부 오류
PREG_BACKTRACK_LIMIT_ERROR 2 백트랙 제한 초과 (backtrack limit)
PREG_RECURSION_LIMIT_ERROR 3 재귀 제한 초과
PREG_BAD_UTF8_ERROR 4 잘못된 UTF-8 데이터
PREG_BAD_UTF8_OFFSET_ERROR 5 오프셋이 올바른 UTF-8 코드의 시작 부분과 일치하지 않음
PREG_JIT_STACKLIMIT_ERROR 6 JIT 컴파일러 스택 제한 초과

예시

잘못된 정규식 이후 오류 확인:

<?php preg_match('/invalid(regex/', 'test'); $error_code = preg_last_error(); echo $error_code; ?>

코드 실행 결과:

4

예시

PCRE 오류 상수와 함께 사용하기:

<?php preg_match('/(?:\D+/', 'abc123'); if (preg_last_error() === PREG_BACKTRACK_LIMIT_ERROR) { echo 'Backtrack limit was exhausted'; } ?>

코드 실행 결과:

'Backtrack limit was exhausted'

함께 보기

  • 함수 preg_match,
    정규식 검색을 수행하는 함수
  • 함수 preg_replace,
    정규식 치환을 수행하는 함수
  • 함수 preg_quote,
    정규식의 특수 문자를 이스케이프하는 함수
한국어
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақКыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
우리는 웹사이트 운영, 분석 및 개인화를 위해 쿠키를 사용합니다. 데이터 처리는 개인정보 처리방침에 따라 이루어집니다.
모두 수락 설정 거부