查看: 54|回覆: 0

[教程] 详解WordPress开发中过滤属性以及Sql语句的函数使用

[複製鏈接]

4

主題

0

回帖

0

積分

热心网友

金币
0
閲讀權限
220
精華
0
威望
0
贡献
0
在線時間
0 小時
註冊時間
2009-9-15
發表於 2023-6-25 00:00:00 | 顯示全部樓層 |閲讀模式

esc_attr()(过滤属性)
一般在写 Html 代码的标签属性的时候会是下边的格式:

?
1
<input type="text" name="rep" value="rep_value" />

那如果 value 属性是动态输出的呢?

?
1
<input type="text" name="rep" value="<?php echo get_option( 'rep_value' ); ?>" />

但是,如果动态输出的属性里有双引号、尖括号等特殊字符,Html 代码就会被打乱,这时就可以使用 esc_attr() 函数对输出的属性进行转义。

使用方法

?
1
esc_attr( $text );

参数

$text (字符串)(必须)要转义的字符串。 默认值:None

返回值

返回转义后的字符串。

例子

?
1
<input type="text" name="rep" value="<?php echo esc_attr( get_option( 'rep_value' ) ); ?>" />

其它

此函数位于: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

回覆

使用道具 舉報

您需要登錄後才可以回帖 登錄 | 立即注册

本版積分規則

相关侵权、举报、投诉及建议等,请发 E-mail:qiongdian@foxmail.com

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部