208 of 410 menu

Funkce preg_last_error

Funkce preg_last_error vrací kód poslední chyby, která nastala při práci s funkcemi pro práci s regulárními výrazy. To je užitečné pro ladění regulárních výrazů, když funkce jako preg_match nebo preg_replace vrátí false. Funkce nepřijímá žádné parametry.

Funkce vrací celočíselný kód chyby. Pro pohodlí lze kód chyby porovnávat se speciálními konstantami (viz tabulka níže).

Syntaxe

preg_last_error(): int;

Tabulka s konstantami chyb

Konstanta Hodnota Popis
PREG_NO_ERROR 0 Nestala se žádná chyba
PREG_INTERNAL_ERROR 1 Interní chyba PCRE
PREG_BACKTRACK_LIMIT_ERROR 2 Překročen limit backtrackingu (backtrack limit)
PREG_RECURSION_LIMIT_ERROR 3 Překročen limit rekurze
PREG_BAD_UTF8_ERROR 4 Neplatná UTF-8 data
PREG_BAD_UTF8_OFFSET_ERROR 5 Posun neodpovídá začátku platného UTF-8 kódu
PREG_JIT_STACKLIMIT_ERROR 6 Překročen limit zásobníku JIT kompilátoru

Příklad

Zkontrolujme chybu po neplatném regulárním výrazu:

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

Výsledek provedení kódu:

4

Příklad

Použití s konstantami chyb PCRE:

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

Výsledek provedení kódu:

'Backtrack limit was exhausted'

Viz také

  • funkci preg_match,
    která provádí vyhledávání podle regulárního výrazu
  • funkci preg_replace,
    která provádí nahrazování podle regulárního výrazu
  • funkci preg_quote,
    která escapuje speciální znaky v regulárních výrazech
Čeština
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяDanskDeutschΕλληνικά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
Používáme soubory cookie pro fungování webu, analýzu a personalizaci. Zpracování údajů probíhá v souladu s Zásadami ochrany osobních údajů.
přijmout vše přizpůsobit odmítnout