当前位置: 首页> 函数类别大全> preg_last_error

preg_last_error

返回最后一个PCRE正则执行产生的错误代码
名称:preg_last_error
分类:正则处理PCRE
所属语言:php
一句话介绍:返回错误代码,指示最近的正则表达式调用失败的原因。

定义和用法

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
$str = '这个正则表达式是无效的。';
$pattern = '/invalid//';
$match = @preg_match($pattern, $str, $matches);

if($match === false) {
  // 发生错误
  $err = preg_last_error();
  if($err == PREG_INTERNAL_ERROR) {
    echo '正则表达式无效。';
  }
} else if($match) {
  // 找到匹配项
  echo $matches[0];
} else {
  // 未找到匹配项
  echo '未找到匹配项';
}
?>

语法

preg_last_error()
同类函数
  • 执行一个正则表达式的搜索和替换 preg_replace

    preg_replace

    执行一个正则表达式的搜索和替换
  • 返回匹配模式的数组条目 preg_grep

    preg_grep

    返回匹配模式的数组条目
  • 执行正则表达式匹配 preg_match

    preg_match

    执行正则表达式匹配
  • 执行正则表达式搜索并使用回调替换 preg_replace_callback_array

    preg_replace_callback_array

    执行正则表达式搜索并使用回调替换
  • 返回上一次PCRE正则表达式执行的错误消息 preg_last_error_msg

    preg_last_error_msg

    返回上一次PCRE正则表达式执行的错误消
  • 返回最后一个PCRE正则执行产生的错误代码 preg_last_error

    preg_last_error

    返回最后一个PCRE正则执行产生的错误代
  • 通过一个正则表达式分隔字符串 preg_split

    preg_split

    通过一个正则表达式分隔字符串
  • 执行正则表达式搜索和替换 preg_filter

    preg_filter

    执行正则表达式搜索和替换
热门文章