个性化阅读
专注于IT技术分析

esc_attr()和sanitize_text_field()之间的确切区别

如果有任何WordPress开发人员可以帮助我了解esc_attr()和sanitize_text_field()函数之间的确切区别是什么?

我想先将电子邮件值提交给数据库, 然后在我创建的不同类中检索相同的值。使用sanitize_text_field, 我可以删除h2, h3等HTML标记, 但我不太了解est_attr函数在回显这两个标记时的作用。下面是我的功能片段, 任何带有示例的详细说明都将帮助我和其他想要彻底理解它的人。还是在将此类信息提交到数据库并检索相同信息时, 有更好的替代php或wp函数使用?

public static function smtp_email_id()
{
    $smtp_email_id = esc_attr( get_option( 'smtp_email_id' ) );
    echo '<input type="email" class="regular-text" name="smtp_email_id" value="'.$smtp_email_id.'" placeholder="username@email.com" />';
}

感谢大伙们


#1


esc_attr($ str)-转义HTML属性。编码<, >, &, “和”(小于, 大于, &, 双引号和单引号)字符。

sanitize_text_field($ str)-在后台, 该函数执行以下操作:

  1. 检查无效的UTF-8(使用wp_check_invalid_utf8())将单个<字符转换为实体
  2. 剥离所有标签
  3. 删除换行符, 制表符和多余的空白
  4. 带状八位字节
赞(0)
未经允许不得转载:srcmini » esc_attr()和sanitize_text_field()之间的确切区别

评论 抢沙发

评论前必须登录!