0

当使用preg_match('/^[\w-]+$/u', $value)我的开发服务器 ( 5.3.15) 时,对于变音符号返回 true。我的实时服务器 ( 5.3.2-1ubuntu4.19) 返回 false。

我必须做些什么才能使实时服务器的行为与我的开发服务器相同?(不幸的是,我不能简单地更新 php 版本。)

两台机器上的代码完全相同。两者都以 UTF8 格式提供页面。

4

1 回答 1

0

\w被定义为[A-Za-z0-9_]iirc。

试试吧preg_match('/^[\pL-]+$/u', $value)

http://php.net/manual/en/regexp.reference.unicode.php

于 2013-04-16T11:46:31.433 回答