wp_kses_bad_protocol_once
函数
wp_kses_bad_protocol_once ( $string, $allowed_protocols, $count = 1 )
- 参数
-
-
(string)
$string
Content to check for bad protocols.- Required: 是
-
(string[])
$allowed_protocols
Array of allowed URL protocols.- Required: 是
-
(int)
$count
Depth of call recursion to this function.- Required: 否
- Default: 1
-
(string)
- 返回值
-
- (string) Sanitized content.
- 定义位置
-
-
wp-includes/kses.php
, line 1795
-
wp-includes/kses.php
- 引入
- 1.0.0
- 弃用
- –
Sanitizes content from bad protocols and other characters.
This function searches for URL protocols at the beginning of the string, while
handling whitespace and HTML entities.
function wp_kses_bad_protocol_once( $string, $allowed_protocols, $count = 1 ) {
$string = preg_replace( '/(*58(?![;0-9])|*3a(?![;a-f0-9]))/i', '$1;', $string );
$string2 = preg_split( '/:|*58;|*3a;|:/i', $string, 2 );
if ( isset( $string2[1] ) && ! preg_match( '%/?%', $string2[0] ) ) {
$string = trim( $string2[1] );
$protocol = wp_kses_bad_protocol_once2( $string2[0], $allowed_protocols );
if ( 'feed:' === $protocol ) {
if ( $count > 2 ) {
return '';
}
$string = wp_kses_bad_protocol_once( $string, $allowed_protocols, ++$count );
if ( empty( $string ) ) {
return $string;
}
}
$string = $protocol . $string;
}
return $string;
}
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。