preg_last_error

(PHP 5 >= 5.2.0, PHP 7)

preg_last_error直近の PCRE 正規表現処理のエラーコードを返す

説明

preg_last_error ( void ) : int

直近の PCRE 正規表現処理のエラーコードを返します。

例1 preg_last_error() の例

<?php

preg_match
('/(?:\D+|<\d+>)*[!?]/''foobar foobar foobar');

if (
preg_last_error() == PREG_BACKTRACK_LIMIT_ERROR) {
    print 
'Backtrack limit was exhausted!';
}

?>

上の例の出力は以下となります。

Backtrack limit was exhausted!

返り値

以下の定数のいずれかを返します (別のページで説明します)。

  • PREG_NO_ERROR
  • PREG_INTERNAL_ERROR
  • PREG_BACKTRACK_LIMIT_ERROR (pcre.backtrack_limit も参照ください)
  • PREG_RECURSION_LIMIT_ERROR (pcre.recursion_limit も参照ください)
  • PREG_BAD_UTF8_ERROR
  • PREG_BAD_UTF8_OFFSET_ERROR (PHP 5.3.0 以降)
  • PREG_JIT_STACKLIMIT_ERROR (PHP 7.0.0 以降)