Função preg_last_error_msg

A função preg_last_error_msg retorna uma mensagem legível para humanos sobre o último erro ocorrido durante o trabalho com funções de expressões regulares. Esta é uma alternativa conveniente à função preg_last_error, que retorna apenas o código de erro.

Sintaxe

phppreg_last_error_msg(): string

Exemplo

Vamos tentar executar uma expressão regular inválida e obter a mensagem de erro:

php<?php
  preg_match('/invalid(regex/', 'test string');
  echo preg_last_error_msg();
?>

Resultado da execução do código:

php'No ending matching delimiter found'

Exemplo

Vamos verificar a mensagem de erro ao exceder o limite de backtrack:

php<?php
  ini_set('pcre.backtrack_limit', 1);
  preg_match('/(\d+)+$/', str_repeat('1', 1000));
  echo preg_last_error_msg();
?>

Resultado da execução do código:

php'Backtrack limit exhausted'

Veja também

  • a função preg_last_error,
    que retorna o código do último erro PCRE
  • a função preg_match,
    que executa uma busca por expressão regular