详解WordPress中过滤链接与过滤SQL语句的方法

时间:2021-05-02

esc_url()(过滤链接)
很多 URL 会有一些小错误,用 esc_url() 函数可以屏蔽或者修正这些错误,并且可以拒绝不安全的协议。

esc_url() 函数的工作内容:

默认拒绝不是下面协议的 URL:defaulting to http、https、ftp、ftps、mailto、news、irc、gopher、nntp、feed 和 telnet
删除无效字符和危险的字符
将字符转换成 HTML 实体字符
使用方法

? 1 esc_url( $url, $protocols, $_context );

参数

$url

(字符串)(必须)要被过滤的 URL.

默认值:None

$protocols

(数组)(可选)可以接收协议的数组,如果没有设置,则默认为:defaulting to http、https、ftp、ftps、mailto、news、irc、gopher、nntp、feed 和 telnet.

默认值:None

$_context

(字符串)(可选)如何返回 URL.

默认值:(字符串)display

返回值

(字符串)返回过滤后的链接。

例子

? 1 <?php echo esc_url( 'www.endskin.com' );//输出:http://www.endskin.com ?>

更多

此函数位于:wp-includes/formatting.php


esc_sql()(过滤 Sql 语句)
esc_sql() 用来过滤准备添加到 Sql 语句里边的字符串,防止 Sql 注入和 Sql 语句被数据干扰出现异常。

用法

? 1 esc_sql( $data );

参数

$data

(字符串)(必须)要过滤的字符串。

默认值:None

返回值

(字符串)返回过滤后的字符串,可以直接添加到 Sql 语句里。

例子

? 1 2 3 $name = esc_sql( $name ); $status = esc_sql( $status ); $wpdb->get_var( "SELECT something FROM table WHERE foo = '$name' and status = '$status'" );

更多

此函数位于:wp-includes/formatting.php

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章