PHP中的未知修饰符“ ”错误

PHP中的未知修饰符“ ”错误,第1张

PHP中的未知修饰符“ /”错误

尝试使用其他定界符,例如

#

preg_replace('#http://|ftp://#', 'https://', $value);

或(不建议使用)对正则表达式中每次出现的定界符进行转义:

preg_replace('/http://|ftp:///', 'https://', $value);

另外,您正在搜索

http:///ftp://
的确没有太大意义的模式,可能就是您的意思
http://|ftp://

您可以将正则表达式缩短为:

preg_replace('#(?:http|ftp)#', 'https', $value);

了解错误:

Unknown modifier '/'

在您的regex中

'/http:///ftp:///'
,第一个
/
视为开始定界符,
/
之后的
:
被视为结束定界符。现在我们知道可以为正则表达式提供修饰符以更改其默认行为。一些这样的修饰符是:

  • i
    :使匹配的大小写不敏感
  • m
    :多行搜索

但是PHP在结束定界符之后看到的是另一个,

/
并试图将其解释为修饰符,但失败了,从而导致错误。

preg_replace
返回更改后的字符串。

$value = 'http://foo.com';$value = preg_replace('#http://|ftp://#', 'https://', $value);// $value is now https://foo.com


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/5621517.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-15
下一篇 2022-12-15

发表评论

登录后才能评论

评论列表(0条)

保存