이 기사의 예에서는 PHP를 사용한 헤더 점프 실패에 대한 해결 방법을 설명하고 참고할 수 있도록 모든 사람과 공유합니다. 구체적인 방법 분석은 다음과 같습니다.
1. 질문:
오늘의 헤더("Location: $url") 예전에는 항상 점프가 가능했는데 오늘은 움직이지 않고 결과만 출력하는군요. 예전에는 값이 맞는지 확인하고 확인을 해야 했습니다. $url을 올바르게 얻었으므로 앞에 추가하십시오. Echo $url은 디버깅에 사용되므로 헤더 기능이 유효하지 않게 됩니다.
2. 해결책:
헤더("location:test.php")를 사용하여 PHP로 점프할 때 다음 사항에 주의하세요.
1. 위치와 ":" 사이에는 공백이 있으면 안 됩니다. 그렇지 않으면 오류가 발생합니다.//phpfensi.com
2. 헤더를 사용하기 전에는 출력이 불가능하며, 포함 페이지에서 "?>" 태그 뒤에는 공백이 없어야 합니다.
3. 헤더 뒤의 PHP 코드도 실행됩니다.
PHP는 실행을 시작할 때 이미 HTTP 헤더 정보를 브라우저에 보냈고 그 이후에는 더 이상 변경이 허용되지 않으므로 PHP 헤더 점프 전에는 콘텐츠를 출력할 수 없습니다.
그러나 출력 후 헤더 정보를 처리해야 하는 경우 ob_start() ob_end_flush()를 사용하여 전송할 콘텐츠를 캐시하고 헤더가 계속될 때까지 기다렸다가 콘텐츠를 보낼 수 있습니다.
또는 더 간단한 방법은 php.ini를 수정하고, output_buffering=Off를 찾아 output_buffering=4096으로 변경하는 것입니다.
이 기사가 모든 사람의 PHP 프로그래밍 설계에 도움이 되기를 바랍니다.