208 of 410 menu

Функција preg_last_error

Функција preg_last_error враћа код последње грешке, која се десила при раду са функцијама за регуларне изразе. Ово је корисно за отклањање грешака регуларних израза, када функције попут preg_match или preg_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ščinaShqipSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Користимо колачиће за рад сајта, аналитику и персонализацију. Обрада података се врши у складу са Политиком приватности.
прихвати све подеси одбиј