问题
之前一直都是好好的,在本地运行就报这个错误。仔细对比才发现,正则表达式里面有一个横杠[\w-]+而服务器线上是PHP7.1,而本地是PHP7.3。使用PHPpreg_quote转义试一下,结果发现,是输出\-。再测试PHP7.1,果然也是,但奇怪的是,PHP7.1并没有报这个错误。
解决办法
将[]中的横杠转义。有点神奇,线上一直跑了一年多都没出错。
preg_match_all
RANGE
CHARACTER
ALL
class
match
preg_match
offset