PHP에서 세션 작업 시 발생할 수 있는 문제점
세션 작업 시 주요 문제점은 다음과 같습니다: 세션 작업이 완료되기 전에는 브라우저에 어떠한 출력도 할 수 없으며, 그렇지 않으면 다음과 같은 오류를 보게 될 것입니다: Warning: Cannot send session cookie - headers already sent.
브라우저에 대한 출력이란 무엇일까요? 이는
<?php 태그 앞에 오는 모든 문자,
예를 들어 텍스트나 태그, 심지어 공백까지도 포함하며,
PHP 측에서 발생하는 오류 메시지도 포함됩니다.
또한 echo, var_dump,
print_r를 통한 출력도 할 수 없습니다.
문서의 인코딩은 반드시 BOM이 없는
utf-8이어야 합니다. 만약 단순히
utf-8로 설정되어 있다면,
<?php 태그 앞에 해당 인코딩의
특수 문자가 삽입되어 세션이 작동하지 않을 것입니다.
다음 코드에 포함된 오류를 수정하세요:
text
<?php
session_start();
?>
다음 코드에 포함된 오류를 수정하세요:
<p>
<?php
session_start();
?>
</p>
다음 코드에 포함된 오류를 수정하세요:
<?php
echo 'text';
session_start();
?>