208 of 410 menu

Функция preg_last_error

La función preg_last_error devuelve el código del último error, ocurrido durante el trabajo con funciones de expresiones regulares. Es útil para depurar expresiones regulares cuando funciones como preg_match o preg_replace devuelven false. La función no acepta parámetros.

La función devuelve un código de error entero. Para mayor comodidad, se puede comparar el código de error con constantes especiales (ver tabla a continuación).

Sintaxis

preg_last_error(): int;

Tabla con constantes de error

Constante Valor Descripción
PREG_NO_ERROR 0 No ocurrió ningún error
PREG_INTERNAL_ERROR 1 Error interno de PCRE
PREG_BACKTRACK_LIMIT_ERROR 2 Se excedió el límite de retroceso (backtrack limit)
PREG_RECURSION_LIMIT_ERROR 3 Se excedió el límite de recursión
PREG_BAD_UTF8_ERROR 4 Datos UTF-8 incorrectos
PREG_BAD_UTF8_OFFSET_ERROR 5 El desplazamiento no corresponde al inicio de un código UTF-8 válido
PREG_JIT_STACKLIMIT_ERROR 6 Se excedió el límite de pila del compilador JIT

Ejemplo

Comprobemos el error después de una expresión regular incorrecta:

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

Resultado de la ejecución del código:

4

Ejemplo

Uso con constantes de error de PCRE:

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

Resultado de la ejecución del código:

'Backtrack limit was exhausted'

Ver también

  • la función preg_match,
    que realiza una búsqueda con expresión regular
  • la función preg_replace,
    que realiza un reemplazo con expresión regular
  • la función preg_quote,
    que escapa caracteres especiales en expresiones regulares
Español
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Usamos cookies para el funcionamiento del sitio, análisis y personalización. El procesamiento de datos se realiza de acuerdo con la Política de privacidad.
aceptar todas configurar rechazar