19 esc_html() 是几乎无损的-只是将HTML标记转换为编码的可见文本,因此它不会被浏览器呈现为标记。 从语义上讲,它是转义的,因此它用于使输出到页面安全。 sanitize_text_field()但是实际上删除了所有HTML标记以及多余的空格。它只留下纯文本。 从语义上讲,它是sanitize,因此它应用于使输入内容安全保存。 — 腊斯特 source 使用esc_html进行输出和保存是否更好?反正我不会显示任何标记..所以我什么时候使用sanitize_text_field()? — yeahman 2014年 1 @yeahman“更好”如何?他们在做截然不同的事情。舍弃标记通常用于不需要标记的事物,例如带有名称的表单。 — Rarst 2014年 我的意思是,它存储用户看到的内容并进行输入...就像您说的那样,它是无损的。(例如,他输入“标记<head>是您应该包括CSS文件的位置”,他希望在其中看到<head>他的职位)。对于名称字段,我将通过验证来控制输入;比较适合吗? — yeahman 2014年 我对sanitize_text_field()和strip_tags — myol 用strip_tags在sanitize_text_field()使用,如果我没看错 — yeahman