preg_match是否可以破坏? / <(\ w +)> /空结果$ match [0]

时间:2019-03-21 22:09:27

标签: php preg-match

这是我的两行代码:

preg_match('/<(\w+)>/', "<word>", $match); var_export($match);

输出:

array ( 0 => '', 1 => 'word', )

为什么$match[0]应该包含整个匹配的字符串时为空?

谢谢!

1 个答案:

答案 0 :(得分:1)

来自zerkms的响应:

“因为在html中用<括起来的任何内容都被视为标记。请检查页面内容而不是呈现。”

编辑:

始终记得在以html呈现内容之前正确编码您的内容:

preg_match('/<(\w+)>/', "<word>", $match); htmlentities( var_export($match) );

这是一个非常重要的安全问题。