所有这些问题都是相似的,(我的猜测)有相似的答案:
POSIX的ereg 函数已被弃用(自 PHP 5.3.0 起)。那么,如果 PHP 社区更喜欢 PCRE 正则表达式,为什么我们需要使用 POSIX?
mb_ereg函数,也是 POSIX,仅用于
mb_
多字节函数的前缀系列?我一直在使用带有 UTF8 字符串的preg 函数
/u
,以及UTF8 正则表达式(!)的选项。为什么不只使用 PCRE?有关于何时使用
preg
和何时使用的明确(官方)PHP 文档mb_ereg
?
相关问题(他们不提供直接答案):
PHP preg_functions 多字节安全吗?@mercator 评论说
mb_ereg
函数“虽然是 POSIX ereg 函数的多字节版本,但与 PCRE preg 函数并不完全相同”。那么,为什么要使用它呢?只是因为有些人喜欢 POSIX 而不喜欢 PCRE?PHP 中的preg_match 和 UTF-8大约是 2006 年的 PHP 错误。