функция
since 4.2.3
wp_kses_attr_parse()
Проверено на WordPress 6.9, обновлено Источник: WordPress Developer Resources.
Сигнатура
wp_kses_attr_parse( string $element ): array|false
Описание
Не изменяет входные данные. Может вернуть «вредоносный» результат.
Основана на wp_kses_split2() и wp_kses_attr().
Оригинал (английский)
Does not modify input. May return “evil” output.
Based on wp_kses_split2() and wp_kses_attr().
Параметры
$element
string
обязательный
HTML-элемент.
Возвращаемое значение
array|false
Исходный код
wp-includes/kses.php:1673
function wp_kses_attr_parse( $element ) {
$valid = preg_match( '%^(<\s*)(/\s*)?([a-zA-Z0-9]+\s*)([^>]*)(>?)$%', $element, $matches );
if ( 1 !== $valid ) {
return false;
}
$begin = $matches[1];
$slash = $matches[2];
$elname = $matches[3];
$attr = $matches[4];
$end = $matches[5];
if ( '' !== $slash ) {
// Closing elements do not get parsed.
return false;
}
// Is there a closing XHTML slash at the end of the attributes?
if ( 1 === preg_match( '%\s*/\s*$%', $attr, $matches ) ) {
$xhtml_slash = $matches[0];
$attr = substr( $attr, 0, -strlen( $xhtml_slash ) );
} else {
$xhtml_slash = '';
}
// Split it.
$attrarr = wp_kses_hair_parse( $attr );
if ( false === $attrarr ) {
return false;
}
// Make sure all input is returned by adding front and back matter.
array_unshift( $attrarr, $begin . $slash . $elname );
array_push( $attrarr, $xhtml_slash . $end );
return $attrarr;
}
История изменений
| Версия | Описание |
|---|---|
| 4.2.3 | Introduced. |

