PHP 5.6.10-preg_match():编译失败:字符类中的范围在偏移100处无效[重复]

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PHP 5.6.10-preg_match():编译失败:字符类中的范围在偏移100处无效[重复]相关的知识,希望对你有一定的参考价值。

我正在遵循ZendFrame工作路由中配置的正则表达式

'constraints' => array(
 'controller' => '[a-zA-Z0-9_-]*',
 'action' => '[a-zA-Z][a-zA-Z0-9_-]*',
 'dashname' => '[a-zA-Z0-9_-s]*',
 'formatter' => '[a-zA-Z]*'
 )

投掷错误警告:preg_match():编译失败:字符类的无效范围在app vendor zendframework zendframework library Zend Mvc Router Http Segment.php中的偏移量100处[370

问题似乎与'dashname'=>'[a-zA-Z0-9 _- s] *',

相同的代码在PHP 5.4版本中有效,但在PHP5.6版本中无效,不胜感激。

答案
在类中-是一个范围运算符,您需要使用对其进行转义>

[a-zA-Z0-9_-s]

以上是关于PHP 5.6.10-preg_match():编译失败:字符类中的范围在偏移100处无效[重复]的主要内容,如果未能解决你的问题,请参考以下文章

PHP微型url编解码函数

PHP将字符串编译为字节码而不对其进行评估

Apache 正在运行线程 MPM,但您的 PHP 模块未编译为线程安全的。您需要重新编译 PHP。 AH00013:预配置失败

PHP结巴程序实现

php 正则表达式

php输出数组第一个键