wp_reset_vars()
Устанавливает указанные переменные как глобальные (global), если они указаны в $_GET / $_POST запросе.
Устанавливает указанную глобальную переменную. В значение ставится (в зависимости от того что первое будет в наличии):
$_POST[ переменная ]
- или
$_GET[ переменная ]
- или
''
(пустая строка).
Хуков нет.
Возвращает
null
. Ничего.
Использование
wp_reset_vars( $vars );
- $vars(массив) (обязательный)
- Массив названий переменных, которые нужно установить/переопределить.
Примеры
#1 Демонстрация
Допустим мы заранее не знаем где именно в $_GET или $_POST запросе передается переменная foo со значением bar. Нам нужно установить эту переменную в глобальную, если такая переменная передана в запросе:
wp_reset_vars( array('foo') ); /* В результате: Если была передана переменная в $_POST['foo'] то global $foo будет равна 'bar' Если была передана переменная в $_GET['foo'] то global $foo будет равна 'bar' Если не была передана ни одна переменная то global $foo будет равна '' */
Точно также можно указать сразу несколько переменных:
wp_reset_vars( array('foo', 'foo2') );
Список изменений
С версии 2.0.0 | Введена. |
Код wp_reset_vars() wp reset vars WP 6.7.2
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 ]; } } }