SunshinePHP 2019

Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

PREG constantes
Constante Descrição Desde
PREG_PATTERN_ORDER Ordena os resultados de modo que $matches[0] seja um array de todas as combinações do padrão. $matches[1] é um array de strings combinadas pelo primeiro subpadrão, e assim por diante. Esta flag é somente usada com preg_match_all().  
PREG_SET_ORDER Ordena os resultados de modo que $matches[0] seja um array do primeiro conjunto de combinações, $matches[1] é um array do segundo conjunto de combinações, e assim por diante. Esta flag é somente usada com preg_match_all().  
PREG_OFFSET_CAPTURE Veja a descrição da PREG_SPLIT_OFFSET_CAPTURE. 4.3.0
PREG_SPLIT_NO_EMPTY Esta flag diz a preg_split() não retornar pedaços em branco.  
PREG_SPLIT_DELIM_CAPTURE Esta flag diz a preg_split() capturar expressões entre parênteses no delimitador do padrão também. 4.0.5
PREG_SPLIT_OFFSET_CAPTURE Se esta flag é usada, para cada combinação será retornada também a posição da string. Note que esta modificação retorna valores em um array onde cada elemento é um array consistindo da string combinada no índice 0 e a posição na string alvo na índice 1. Esta flag somente é utilizada por preg_split(). 4.3.0
PREG_UNMATCHED_AS_NULL Esta flag informa a preg_match() e preg_match_all() para incluir subpadrões não combinados em $matches como NULL. Sem essa flag, subpadrões sem combinação são reportados como strings vazias, como se fosse combinações vazias. Informar essa flag permite diferencia entre esses dois casos. 7.2.0
PREG_NO_ERROR Retornado pela preg_last_error() se não haver erros. 5.2.0
PREG_INTERNAL_ERROR Retornado pela preg_last_error() se houve um erro interno na PCRE. 5.2.0
PREG_BACKTRACK_LIMIT_ERROR Retornado pela preg_last_error() se backtrack limit foi esgotado. 5.2.0
PREG_RECURSION_LIMIT_ERROR Retornado pela preg_last_error() se recursion limit foi esgotado. 5.2.0
PREG_BAD_UTF8_ERROR Retornado pela preg_last_error() se o último erro foi causado por informação deformada em UTF-8 (somente quando usado a regex em modo UTF-8). 5.2.0
PREG_BAD_UTF8_OFFSET_ERROR Retornado pela preg_last_error() se o offset não correspondeu ao início de um válido code point UTF-8 (somente quando executando uma regex em modo UTF-8). 5.3.0
PREG_JIT_STACKLIMIT_ERROR Retornado por preg_last_error() se a última função PCRE falhou por falta de JIT stack space. 7.0.0
PCRE_VERSION Versão da PCRE e data de liberação (e.g. "7.0 18-Dec-2006"). 5.2.4
add a note add a note

User Contributed Notes 2 notes

up
16
erutan409 at hotmail dot com
3 years ago
PREG_PATTERN_ORDER: 1
PREG_SET_ORDER: 2
PREG_OFFSET_CAPTURE: 256
PREG_SPLIT_NO_EMPTY: 1
PREG_SPLIT_DELIM_CAPTURE: 2
PREG_SPLIT_OFFSET_CAPTURE: 4
PREG_NO_ERROR: 0
PREG_INTERNAL_ERROR: 1
PREG_BACKTRACK_LIMIT_ERROR: 2
PREG_RECURSION_LIMIT_ERROR: 3
PREG_BAD_UTF8_ERROR: 4
PREG_BAD_UTF8_OFFSET_ERROR: 5
PCRE_VERSION: %YOUR_VERSION_NUMBER%
up
8
Robert
2 years ago
The new PREG_JIT_STACKLIMIT_ERROR constant introduced with PHP 7.0.0 has got a value of 6.

I experienced this error code when parsing a 112KB file. preg_match_all failed with this error. Interesting was: The matches array contained some entries, but not all as the command failed (I missed to check the return value).

Unfortunately you can not configure the stack-size of the PCRE JIT. The only way out was - at least for me - to disable the PCRE JIT via php.ini (pcre.jit=0).
To Top