安装/配置

目录

需求

构建此扩展不需要其他扩展。

安装

PCRE 是 PHP 核心扩展,所以总是启用的。 默认情况下,该扩展使用内置的 PCRE library。或者,也可以通过指定 configure 选项 --with-pcre-regex=DIR 设置外部 PCRE library 目录,DIR 是 PCRE 的 include 和 library 文件位置。 PHP 5.6/7.0 推荐使用 PCRE 8.10 或更高版本。

PHP 7.0.0 起 PCRE 默认支持 JIT(just-in-time)编译技术,PHP 7.0.12 起可以通过 --without-pcre-jit 禁用 PCRE 的 JIT 功能。

PHP 的 Windows 版本已内建对此扩展的支持。不需要载入额外的扩展来使用这些函数。

Note:

PHP 5.3.0 的之前版本,可通过 --without-pcre-regex 配置选项禁用此扩展。

PCRE 是一个活跃的项目,作为它的一个演变,PHP功能依赖于它。 php 文档的某些部分 可能会过期, 因为它可能不包括 PCRE 提供的一些新功能. 关于修正的清单,请查阅 » PCRE library changelog, 下面是绑定的 PCRE 库的历史记录:

PHP 版本Updated PCRE 版本Notes
7.0.3 / 5.6.18 / 5.5.328.38参见 CVE-2015-8383、 CVE-2015-8386、 CVE-2015-8387、 CVE-2015-8389、 CVE-2015-8390、 CVE-2015-8391、 CVE-2015-8393、 CVE-2015-8394
7.0.0 / 5.6.9 / 5.5.26 / 5.4.418.37See CVE-2015-2325, CVE-2015-2326
5.6.0 / 5.5.108.34 
5.5.0 / 5.4.14 / 5.3.248.32 
5.4.9 / 5.3.198.31 
5.3.78.12 
5.3.68.11 
5.3.48.10 
5.3.3 / 5.2.148.02 
5.3.28.00 
5.3.0 / 5.2.137.9 
5.2.77.8 
5.2.67.6 
5.2.57.3 
5.2.47.2 
5.2.27.0 
5.2.06.7 
5.1.36.6 
5.1.06.2 
5.0.55.0 
5.0.04.5 
4.4.77.7 

运行时配置

这些函数的行为受 php.ini 中的设置影响。

名字默认可修改范围更新日志
pcre.backtrack_limit"100000"PHP_INI_ALLphp 5.2.0 起可用。
pcre.recursion_limit"100000"PHP_INI_ALLphp 5.2.0 起可用。
pcre.jit"1"PHP_INI_ALLPHP 7.0.0 起可用

有关 PHP_INI_* 样式的更多详情与定义,见 配置可被设定范围

这是配置指令的简短说明。

pcre.backtrack_limit integer
PCRE的回溯限制.

pcre.recursion_limit integer
PCRE的递归限制. 请注意, 如果 讲这个值设置为一个很大的数字, 你可能会消耗掉 所有的进程可用堆栈, 最终导致php崩溃(直到达到系统限制的堆栈大小).

pcre.jit boolean
是否使用 PCRE 的 JIT 编译.

资源类型

此扩展没有定义资源类型。