從 PHP 7.3 版開始,使用「pcre2」取代「pcre」。它與 PHP 原始碼捆綁在一起,或者可以使用預先安裝的 pcre2,如果它是使用以下設定選項編譯的
--enable-shared --enable-unicode --enable-jit
如果您想將預先安裝的 pcre2 與 PHP 一起使用,請使用設定選項 --with-pcre-dir=<path> 和 --with-pcre-regex=<path>(我不知道為什麼有兩個)。
PCRE 擴充套件是 PHP 的核心擴充套件,因此永遠啟用。預設情況下,此擴充套件是使用內建的 PCRE 函式庫編譯的。或者,可以使用外部 PCRE 函式庫,方法是傳入 --with-pcre-regex=DIR 設定選項,其中 DIR
是 PCRE 的 include 和 library 檔案的位置。建議使用 PCRE 8.10 或更新版本;從 PHP 7.3.0 開始,需要 PCRE2。
預設支援 PCRE 的即時編譯 (JIT),從 PHP 7.0.12 開始,可以使用 --without-pcre-jit 設定選項來停用它。
Windows 版本的 PHP 內建支援此擴充功能。您無需載入任何額外的擴充功能即可使用這些函式。
PCRE 是一個持續發展的專案,隨著它的變化,依賴它的 PHP 功能也會跟著改變。PHP 文件的某些部分可能已過時,因為它可能未涵蓋 PCRE 提供的最新功能。如需變更列表,請參閱 » PCRE 函式庫更新日誌 以及以下的內建 PCRE 歷史記錄
PHP 版本 | 更新的 PCRE 版本 | 備註 |
---|---|---|
8.2.0 | 10.40 | |
8.1.0 | 10.39 | |
7.4.12, 8.0.0 | 10.35 | |
7.4.6 | 10.34 | |
7.4.0 | 10.33 | |
7.3.0 | 10.32 | |
7.2.0 | 8.41 | |
7.0.3 | 8.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 | 8.37 | 參見 CVE-2015-2325、CVE-2015-2326 |
從 PHP 7.3 版開始,使用「pcre2」取代「pcre」。它與 PHP 原始碼捆綁在一起,或者可以使用預先安裝的 pcre2,如果它是使用以下設定選項編譯的
--enable-shared --enable-unicode --enable-jit
如果您想將預先安裝的 pcre2 與 PHP 一起使用,請使用設定選項 --with-pcre-dir=<path> 和 --with-pcre-regex=<path>(我不知道為什麼有兩個)。