wp_reset_vars()
Устанавливает указанные переменные как глобальные (global), если они указаны в $_GET / $_POST запросе.
Устанавливает указанную глобальную переменную. В значение ставится (в зависимости от того что первое будет в наличии):
$_POST[ переменная ]- или
$_GET[ переменная ] - или
''(пустая строка).
Хуков нет.
Возвращает
null. Ничего.
Использование
wp_reset_vars( $vars );
- $vars(массив) (обязательный)
- Массив названий переменных, которые нужно установить/переопределить.
Примеры
#1 Демонстрация
Допустим мы заранее не знаем где именно в $_GET или $_POST запросе передается переменная foo со значением bar. Нам нужно установить эту переменную в глобальную, если такая переменная передана в запросе:
wp_reset_vars( ['foo'] ); /* В результате: Если была передана переменная в $_POST['foo'] то global $foo будет равна 'bar' Если была передана переменная в $_GET['foo'] то global $foo будет равна 'bar' Если не была передана ни одна переменная то global $foo будет равна '' */
Точно также можно указать сразу несколько переменных:
wp_reset_vars( ['foo', 'foo2'] );
Список изменений
| С версии 2.0.0 | Введена. |
Код wp_reset_vars() wp reset vars WP 7.1
function wp_reset_vars( $vars ) {
foreach ( $vars as $var ) {
if ( empty( $_POST[ $var ] ) ) {
if ( empty( $_GET[ $var ] ) ) {
$GLOBALS[ $var ] = '';
} else {
$GLOBALS[ $var ] = $_GET[ $var ];
}
} else {
$GLOBALS[ $var ] = $_POST[ $var ];
}
}
}