Чтобы перенаправить посетителя на другую страницу (особенно полезно в условном цикле), просто используйте следующий код:
<?php
header('Location: mypage.php');
?>
В этом случае mypage.php
- это адрес страницы, на которую вы перешли. хотел бы перенаправить посетителей. Этот адрес может быть абсолютным и может также включать параметры в этом формате: mypage.php?param1=val1&m2=val2)
Относительный / Абсолютный путь
При работе с относительными или абсолютными путями идеально подходит для выбора абсолютного пути от корня сервера (DOCUMENT_ROOT). Используйте следующий формат:
<?php
header('Location: /directory/mypage.php');
?>
Если целевая страница находится на другом сервере, укажите полный URL-адрес:
<?php
header('Location: http://www.ccm.net/forum/');
?>
Заголовки HTTP
Согласно протоколу HTTP, заголовки HTTP должны отправляться before
любым типам контента. Это означает, что никакие символы никогда не должны отправляться перед заголовком - даже пустое пространство!
Временные / постоянные перенаправления
По умолчанию тип перенаправления представлен выше временный Это означает, что поисковые системы, такие как Google Search, не будут учитывать перенаправление при индексации.
Если вы хотите уведомить поисковые системы о том, что страница была постоянно перемещена в другое место, используйте следующий код:
<?
header('Status: 301 Moved Permanently', false, 301);
header('Location: new_address');
?>
Например, эта страница имеет следующий код:
<?
header('Status: 301 Moved Permanently', false, 301);
header('Location: /pc/imprimante.php3');
exit();
?>
Когда вы нажимаете на ссылку выше, вы автоматически перенаправляетесь на эту страницу. Более того, это постоянное перенаправление (статус: 301 перемещен навсегда). Поэтому, если вы введете первый URL в Google, вы будете автоматически перенаправлены на вторую, перенаправленную ссылку.
Интерпретация кода PHP
Код PHP, расположенный после заголовка (), будет интерпретироваться сервером, даже если посетитель перейдет по адресу, указанному в перенаправлении. В большинстве случаев это означает, что вам нужен метод, чтобы следовать функции header()
функции exit()
, чтобы уменьшить нагрузку на сервер:
<?
header('Status: 301 Moved Permanently', false, 301);
header('Location: address');
exit();
?>
Не думаю, что есть встроенный. Пример реализации здесь , хотя :)
.
function array_flip( trans )
{
var key, tmp_ar = {};
for ( key in trans )
{
if ( trans.hasOwnProperty( key ) )
{
tmp_ar[trans[key]] = key;
}
}
return tmp_ar;
}