>  기사  >  백엔드 개발  >  PHP에서 일반적으로 사용되는 URL 주소 점프 방법은 무엇입니까?

PHP에서 일반적으로 사용되는 URL 주소 점프 방법은 무엇입니까?

伊谢尔伦
伊谢尔伦원래의
2017-06-23 14:15:125634검색

PHP에서 어떤 방법으로 URL을 점프하더라도 헤더 기능 없이는 할 수 없습니다. 아래에서는 URL 점프를 구현하는 데 일반적으로 사용되는 절차와 방법을 정리하여 도움이 필요한 친구들이 참고할 수 있도록 하겠습니다.

1.header() 함수

header() 함수는 PHP에서 페이지 이동을 위한 매우 간단한 방법입니다. header() 함수의 주요 기능은 HTTP 프로토콜 헤더(header)를 브라우저에 출력하는 것입니다.

header() 함수의 정의는 다음과 같습니다.

void header (string string [,bool replacement [,int http_response_code]])
선택적 매개변수인 replacement는 이전의 유사한 헤더를 바꿀지 아니면 헤더를 추가할지 지정합니다. 동일한 유형 헤더의 헤더, 기본값은 교체입니다.

두 번째 선택적 매개변수 http_response_code는 HTTP 해당 코드를 지정된 값으로 강제합니다. 헤더 함수의 Location 유형 헤더는 페이지 이동을 구현하는 데 자주 사용되는 특수 헤더 호출입니다. 참고:

1.location과 ":" 기호 사이에는 공백이 있으면 안 됩니다. 그렇지 않으면 점프하지 않습니다.

2. 헤더를 사용하기 전에는 출력이 불가능합니다.

3.header 뒤의 PHP 코드도 실행됩니다. 예를 들어 브라우저를 php.cn

< ?php 
//重定向浏览器 
header("Location: http://www.php.cn"); 
//确保重定向后,后续代码不会被执行 
exit;
?>

1로 리디렉션합니다. 한 문장의 PHP 점프 코드:

<?php $url = $_GET[&#39;url&#39;]; Header("Location:$url"); ?>

참고: ad.php로 저장하면 ad.php?url=www.111cn.net 효과를 실현할 수 있습니다. Jisi.com으로 이동
2. 판단 시 PHP 점프 코드:

if($_COOKIE["u_type"])
{ 
header(&#39;location:register.php&#39;); 
} else{ 
setcookie(&#39;u_type&#39;,&#39;1&#39;,&#39;86400*360&#39;);//设置cookie长期有效 header(&#39;location:zc.html&#39;); 
}

참고: 사용자가 zc.php를 방문하면 쿠키가 있는지 판단하여 등록합니다. .php가 존재하지 않으면 쿠키를 생성하고 zc.html

URL 리디렉션 기능

// URL重定向
function redirect($url, $time=0, $msg=”) {
//多行URL地址支持
$url = str_replace(array(“n”, “r”), ”, $url);
if ( empty($msg) )
$msg = “系统将在{$time}秒之后自动跳转到{$url}!”;
if (!headers_sent()) {
// redirect
if (0 === $time) {
header(‘Location: ‘ . $url);
} else {
header(“refresh:{$time};url={$url}”);
echo($msg);
}
exit();
} else {
$str = “<meta http-equiv=’Refresh’ content=’{$time};URL={$url}’>”;
if ($time != 0)
$str .= $msg;
exit($str);
}
}

으로 점프합니다. 위의 내용은 404 상태를 반환할 수 없습니다. 페이지 점프 후 404 상태 코드가 반환되면 다음을 수행할 수 있습니다. 팔로우

function getref()
{
 $url = @$_SERVER[&#39;HTTP_REFERER&#39;];
 if( !empty( $url ) )
 {
  if( !strstr($url ,&#39;111cn.net&#39; ) && !strstr($url,&#39;111cn.net&#39;))
  {
   @header("http/1.1 404 not found");
   @header("status: 404 not found");
   include("404.html");//跳转到某一个页面,推荐使用这种方法
   exit();
  }
 }
 else
 {
  @header("http/1.1 404 not found");
  @header("status: 404 not found");
  include("404.html");//跳转到某一个页面,推荐使用这种方法
  exit();
 }
}

위 내용은 PHP에서 일반적으로 사용되는 URL 주소 점프 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.