이전 페이지 URL에 파라미터 붙이기

유영·2025년 6월 5일
0

PHP

목록 보기
69/70

// 이전 페이지 URL에 SearchSdate, SearchEdate 추가
$prev_url = $_SERVER['HTTP_REFERER'];
$back_url = "";
$parsed_url = parse_url($prev_url);
$query = isset($parsed_url['query']) ? $parsed_url['query'] . "&" : "";


echo "<pre>";
print_r("prev_url :". $prev_url."<br>");
print_r("parsed_url['scheme'] :". $parsed_url['scheme']."<br>");
print_r("parsed_url['host'] :". $parsed_url['host']."<br>");
print_r("parsed_url['query'] :". $parsed_url['query']."<br>");
print_r("parsed_url['path'] :". $parsed_url['path']."<br>");
print_r("query :". $query."<br>");
echo "</pre>";
if(strpos($prev_url, "찾고자 하는 페이지명")){
$back_url ="찾고자 하는 페이지"."붙이고 싶은 파라미터"
}
function unparse_url($parsed_url) {

  $scheme   = isset($parsed_url['scheme']) ? $parsed_url['scheme'] . '://' : '';

  $host     = isset($parsed_url['host']) ? $parsed_url['host'] : '';

  $port     = isset($parsed_url['port']) ? ':' . $parsed_url['port'] : '';

  $user     = isset($parsed_url['user']) ? $parsed_url['user'] : '';

  $pass     = isset($parsed_url['pass']) ? ':' . $parsed_url['pass']  : '';

  $pass     = ($user || $pass) ? "$pass@" : '';

  $path     = isset($parsed_url['path']) ? $parsed_url['path'] : '';

  $query    = isset($parsed_url['query']) ? '?' . $parsed_url['query'] : '';

  $fragment = isset($parsed_url['fragment']) ? '#' . $parsed_url['fragment'] : '';

  return "$scheme$user$pass$host$port$path$query$fragment";

}



?>
  • 예제
$str="http://search.naver.com/search.naver?where=nexearch&query=dreamload&sm=top_hty&fbm=1&ie=utf8#footer";

$arr_url=parse_url($str);

foreach($arr_url as $key=>$data)
{
    echo "[".$key."] : ".$data."<br/>";
}

[scheme] : http
[host] : search.naver.com
[path] : /search.naver
[query] : where=nexearch&query=dreamload&sm=top_hty&fbm=1&ie=utf8
[fragment] : footer

출처: https://www.php.net/manual/en/function.parse-url.php
https://b.redinfo.co.kr/65

0개의 댓글