// 참조 URL 가져오기
if (isset($_SERVER['HTTP_REFERER']) && $_SERVER['HTTP_REFERER'] !== '') { // 값이 존재하면
    echo $_SERVER['HTTP_REFERER']; // 참조 URL이 문자열로 출력됩니다.
} else { // 값이 존재하지 않으면
    echo '참조 URL을 가져올 수 없습니다.';
}
$_SERVER['HTTP_REFERER']
상황
/* 존재하지 않는 키에 직접 접근 */
var_dump($_SERVER['HTTP_REFERER']);

// 출력:
// PHP 8.0 이전 - Notice: Undefined index: HTTP_REFERER in ...
// PHP 8.0부터 - Warning: Undefined array key "HTTP_REFERER" in ...
// NULL
<a href="https://example.com" rel="noreferrer" target="_blank">링크로 이동하기</a>
/* rel="noreferrer"가 적용된 링크를 통해 이동한 경우 */
var_dump($_SERVER['HTTP_REFERER']);

// 출력:
// PHP 8.0 이전 - Notice: Undefined index: HTTP_REFERER in ...
// PHP 8.0부터 - Warning: Undefined array key "HTTP_REFERER" in ...
// NULL
상황
/* $_SERVER['HTTP_REFERER'] 키가 존재(isset())하는지와 빈 문자열('')인지 여부를 함께 체크합니다. */
if (isset($_SERVER['HTTP_REFERER']) && $_SERVER['HTTP_REFERER'] !== '') {
    echo $_SERVER['HTTP_REFERER']; // 참조 URL이 문자열로 출력됩니다.
} else {
    echo '참조 URL을 가져올 수 없습니다.';
}