208 of 410 menu

Função preg_last_error

A função preg_last_error retorna o código do último erro, ocorrido durante o trabalho com funções de expressões regulares. Isso é útil para depurar expressões regulares, quando funções como preg_match ou preg_replace retornam false. A função não aceita parâmetros.

A função retorna um código de erro inteiro. Para conveniência, você pode comparar o código de erro com constantes especiais (veja a tabela abaixo).

Sintaxe

preg_last_error(): int;

Tabela com constantes de erro

Constante Valor Descrição
PREG_NO_ERROR 0 Nenhum erro ocorreu
PREG_INTERNAL_ERROR 1 Erro interno do PCRE
PREG_BACKTRACK_LIMIT_ERROR 2 Limite de retrocesso (backtrack limit) excedido
PREG_RECURSION_LIMIT_ERROR 3 Limite de recursão excedido
PREG_BAD_UTF8_ERROR 4 Dados UTF-8 incorretos
PREG_BAD_UTF8_OFFSET_ERROR 5 O deslocamento não corresponde ao início de um código UTF-8 válido
PREG_JIT_STACKLIMIT_ERROR 6 Limite de pilha do compilador JIT excedido

Exemplo

Vamos verificar o erro após uma expressão regular incorreta:

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

Resultado da execução do código:

4

Exemplo

Uso com constantes de erro PCRE:

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

Resultado da execução do código:

'Backtrack limit was exhausted'

Veja também

  • a função preg_match,
    que executa uma busca por expressão regular
  • a função preg_replace,
    que executa uma substituição por expressão regular
  • a função preg_quote,
    que escapa caracteres especiais em expressões regulares
Português
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Nós usamos cookies para o funcionamento do site, análises e personalização. O processamento de dados é realizado de acordo com a Política de Privacidade.
aceitar todas configurar rejeitar