默认功能如下update_post_meta()
使用用户输入是否安全?
e、 g。
update_post_meta(76, \'my_key\', $_GET[\'value\'])
或者我应该使用
$_GET[\'value\'] = sanitize_text_field($_GET[\'value\']);
使用前
update_post_meta(76, \'my_key\', $_GET[\'value\'])
SO网友:Mark Kaplun
在投票后@pieter的答案。。。。
最近,我意识到,在使用“坏”数据时(通常意味着转义,但也意味着验证),要比在输入时优雅地处理好得多。数据损坏的发生不仅是因为对数据进行了一些胭脂处理“拉屎”,而且还因为环境发生了变化,数据不再相关(插件被禁用)。
如果您要向用户发出一些警报,那么验证是值得的,否则它实际上可能是一种中间状态,很难防范并提供有用的反馈(customizer live changes)。
对于卫生设施,我只是使用wordpress API访问DB,并让他们处理这方面的问题,但除此之外,我觉得做更多的事情通常是浪费时间。
这一切都取决于上下文。在您的情况下,您应该问的问题是您是否甚至想要清理该值,因为清理意味着用户请求的值将不会以他希望的方式显示。