Php 导致警告的原因:preg_match():未知修饰符';p';
我遇到了问题,无法修复此错误。我使用这个上传脚本来检查mime类型 警告:preg_match():未知修饰符“p”Php 导致警告的原因:preg_match():未知修饰符';p';,php,regex,preg-match,Php,Regex,Preg Match,我遇到了问题,无法修复此错误。我使用这个上传脚本来检查mime类型 警告:preg_match():未知修饰符“p” 警告:preg_match():未知修饰符“g” 警告:preg_match():未知修饰符'(' 提前谢谢第二次/(结束)后的所有内容都将被考虑。请使用另一个分隔符,如~ ~^image/p?jpeg$~i 或者要匹配模式内的分隔符文字,请使用反斜杠将其转义: /^image\/p?jpeg$/i 选择模式中不需要的定界符最为方便,无需担心转义。常用的定界符有/、~、#、@
警告:preg_match():未知修饰符“g”
警告:preg_match():未知修饰符'('
提前谢谢第二次
/
(结束)后的所有内容都将被考虑。请使用另一个分隔符,如~
~^image/p?jpeg$~i
或者要匹配模式内的分隔符文字,请使用反斜杠将其转义:
/^image\/p?jpeg$/i
选择模式中不需要的定界符最为方便,无需担心转义。常用的定界符有/
、~
、#
、@
甚至是括号样式的定界符,如(
模式)
旁注
您可以使用以下方法将所有三个
preg_match
组合为一个:
(?:
启动非捕获。用于测试:考虑第二次/
(关闭)后的所有内容。使用另一个分隔符,如~
~^image/p?jpeg$~i
或者要匹配模式内的分隔符文字,请使用反斜杠将其转义:
/^image\/p?jpeg$/i
选择模式中不需要的定界符最为方便,无需担心转义。常用的定界符有/
、~
、#
、@
甚至是括号样式的定界符,如(
模式)
旁注
您可以使用以下方法将所有三个
preg_match
组合为一个:
(?:
启动非捕获。适合测试:如果使用/as start-end-delimiter,则必须在正则表达式中转义/如果使用/as-start-end-delimiter,则必须在正则表达式中转义/如果使用/as-start-end-delimiter,您的意思是这样的如果(preg\u-match('/^image/p?jpeg$/i',$\u文件['upload']['type'])或preg\u-match('/^image/i',$/i',$\u文件['upload']['type'])或preg\u match('/\^image/(x-?png$/i'),$\u文件['upload']['type'])@jemz如下:preg\u match('/^image/p?jpeg$~i'
…或preg\u match('/^image\/p?jpeg$/i'
)。如果(preg\u match('/\\^image/p?jpeg$/i'),$)文件['type'/'upload'/'u文件,[/i'.]或者preg\u match('/^image/(x-)?png$/i',$\u文件['upload']['type'])@jemz如下:preg\u match('/^image/p?jpeg$~i'
…或preg\u match('/^image\/p?jpeg$/i'
)。。。