Php/func regex preg last error
来自菜鸟教程
PHP preg_last_error()函数
例
使用preg_last_error()处理错误:
<?php
$str = 'The regular expression is invalid.';
$pattern = '/invalid//';
$match = @preg_match($pattern, $str, $matches);
if($match === false) {
// An error occurred
$err = preg_last_error();
if($err ==
PREG_INTERNAL_ERROR) {
echo 'Invalid regular
expression.';
}
} else if($match) {
// A match was
found
echo $matches[0];
} else {
// No matches were
found
echo 'No matches found';
}
?>
定义和用法
The
preg_last_error()
函数为最近求值的正则表达式返回错误代码。返回值将匹配以下常量之一:
| 不变 | 描述 |
|---|---|
| PREG_NO_ERROR | 没有发生错误 |
| PREG_INTERNAL_ERROR | 评估表达式时出错 |
| PREG_BACKTRACK_LIMIT_ERROR | 评估表达式所需的回溯次数超过了PHP配置中指定的限制 |
| PREG_RECURSION_LIMIT_ERROR | 计算表达式所需的递归深度超出了PHP配置中给出的限制 |
| PREG_BAD_UTF8_ERROR | 输入的字符串包含无效的UTF-8数据 |
| PREG_BAD_UTF8_OFFSET_ERROR | 评估期间,字符串偏移量未指向多字节UTF-8符号的第一个字符 |
| PREG_JIT_STACKLIMIT_ERROR | 尝试评估表达式时,JIT编译器的堆栈内存不足 |
句法
preg_last_error()
技术细节
| 返回值: | 返回最近求值的正则表达式的错误代码 |
| PHP版本: | 5.2.0+ |