Php — передача нескольких заголовков с помощью одной функции

#php #http #header #http-post

#php #http #заголовок #http-post

Вопрос:

У меня есть функция route, которая корректирует URI с заданными правилами «дружественного URL». Если какая-то часть отсутствует или неверна, она изменяется на допустимую форму, а затем функция перенаправления выдает заголовок местоположения с правильным URL.

 function redir($controller_name,$action_name){
    $root = '/' . Model::$rootSite . '/';
    $fullSite = 'http://'.$_SERVER['SERVER_NAME'].$root.
    $controller_name.'/'.$action_name;
    header('Location: '.$fullSite);
}
  

Ничего нового… Но! Если есть форма, на первой итерации, перед перенаправлением, она отправляет данные $_POST, которые могут быть обработаны. Но как я могу перенести это на следующую итерацию, сопровождающую действительный URL-адрес в функции перенаправления?
Функция заголовка может достигать нескольких заголовков http? Каков правильный синтаксис?

Комментарии:

1. Вы можете вызвать header() несколько раз, чтобы добавить разные заголовки. Но я не уверен, что это то, о чем вы спрашиваете.

2. У вас может быть несколько заголовков, которые могут выполняться индивидуально в зависимости от условий, но вы можете передавать только один заголовок на страницу, иначе вы получите ошибку «заголовки уже отправлены».

3. Вы не можете перенаправить POST запрос. Перенаправление всегда обрабатывается с помощью GET и не отправляет данные post.