下文來給大家整理一些WordPress函數的用法,主要是包括有esc_js() esc_url() esc_html() esc_sql() esc_attr()幾個函數,希望對大家有幫助.
esc_js() 用來轉義引號,加上反斜線,一般用來過濾內嵌在 Html 中的 JS.
用法:esc_js( $text );
參數:$text
(字符串)(必須)要過濾的字符串.
默認值:None
返回值:(字符串)返回過濾后的字符串.
例子,代碼如下:
- <input type="text" value="<?php echo esc_attr( $instance['input_text'] ); ?>" id="subbox" onfocus="if ( this.value == '<?php echo esc_js( $instance['input_text'] ); ?>') { this.value = ''; }" onblur="if ( this.value == '' ) { this.value = '<?php echo esc_js( $instance['input_text'] ); ?>'; }" name="email" />
- //Vevb.com
esc_url()(過濾鏈接)
esc_url() 函數的工作內容:
默認拒絕不是下面協議的 URL:defaulting to http、https、ftp、ftps、mailto、news、irc、gopher、nntp、feed 和 telnet
刪除無效字符和危險的字符,將字符轉換成 HTML 實體字符.
使用方法: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
返回值:(字符串)返回過濾后的鏈接.
例子,代碼如下:
<?php echo esc_url( 'www.companysz.com' );//輸出:http://www.companysz.com ?>
esc_html()(轉義 Html)
esc_html() 函數用來轉義 Html 代碼,讓 Html 代碼不轉義.
用法:esc_html( $text );
參數:$text
(字符串)(必須)要轉義的字符串.
默認值:None
返回值:(字符串)返回轉義后的字符.
例子,代碼如下:
echo esc_html( '<a href="http://www.example.com/">A link</a>' );
esc_sql(),過濾 Sql 語句.
esc_sql() 用來過濾準備添加到 Sql 語句里邊的字符串,防止 Sql 注入和 Sql 語句被數據干擾出現異常。
用法:esc_sql( $data );
參數:$data
字符串必須要過濾的字符串.
默認值:None
返回值:字符串返回過濾后的字符串,可以直接添加到 Sql 語句里.
例子,代碼如下:
- $name = esc_sql( $name );
- $status = esc_sql( $status );
- $wpdb->get_var( "SELECT something FROM table WHERE foo = '$name' and status = '$status'" ); //Vevb.com
esc_attr(),過濾屬性.
一般在寫 Html 代碼的標簽屬性的時候會是下邊的格式,代碼如下:
<input type="text" name="rep" value="rep_value" />
那如果 value 屬性是動態輸出的呢?
<input type="text" name="rep" value="<?php echo get_option( 'rep_value' ); ?>" />
但是,如果動態輸出的屬性里有雙引號、尖括號等特殊字符,Html 代碼就會被打亂,這時就可以使用 esc_attr() 函數對輸出的屬性進行轉義.
使用方法:esc_attr( $text );
參數:$text 字符串必須要轉義的字符串,默認值:None.
返回值:返回轉義后的字符串.
例子,代碼如下:
<input type="text" name="rep" value="<?php echo esc_attr( get_option( 'rep_value' ) ); ?>" />
新聞熱點
疑難解答
圖片精選