从坏协议中清除字符串。

原型

wp_kses_bad_protocol( string $string, array $allowed_protocols )

描述

此函数从$ string的开头删除所有不允许的协议。它忽略了空格和字母的大小写,它确实理解HTML实体。它在while循环中工作,所以它不会被像“javascript:javascript:alert(57)”之类的字符串所欺骗。

参数

$string (string) (Required) 用于过滤不良协议的内容

$allowed_protocols (array) (Required) 允许的协议保持

返回值

(string)  过滤的内容

源文件

路径:wp-includes/kses.php

<?php
...
function wp_kses_bad_protocol($string, $allowed_protocols) {
	$string = wp_kses_no_null($string);
	$iterations = 0;
	do {
		$original_string = $string;
		$string = wp_kses_bad_protocol_once($string, $allowed_protocols);
	} while ( $original_string != $string && ++$iterations < 6 );
	if ( $original_string != $string )
		return '';
	return $string;
}
...
?>

其他

英文文档:https://developer.wordpress.org/reference/functions/wp_kses_bad_protocol/