나는 나쁜 학생이다== 나는 나 자신을 가르치는 방법을 많이 몰라서 마스터에게 질문하고 싶습니다. 책에 있는 코드는 다음과 같습니다:
<?php
date_default_timezone_set ("Etc/GMT-8");
if(!isset( $_COOKIE["visittime"])){ //쿠키가 존재하지 않는 경우
setcookie("visittime",date("y-m-d H:i :s")); //쿠키 변수 설정
echo "처음 만난 시간:".date("y-m-d H:i:s")."<br>"; //출력 문자열
}else { //쿠키가 존재하는 경우
setcookie("visittime",date( "y-m-d H:i:s"),time()+60) //쿠키 만료 시간을 사용하여 변수 설정++++++++++++++++++
echo "마지막 시간 : ".$_COOKIE["visittime"]; //최근 웹사이트 방문 시간 출력------------
echo "< br>"; // 캐리지 리턴 문자 출력
}
echo "now: ".date("y-m-d H:i:s") // 현재 액세스 시간 출력***** ******* *************
?>
<meta http-equiv="Content-Type" content="text/html; charset =gb2312">
렌더링 대상:
첫 번째 로드:
두 번째 새로 고침:
질문: 제가 묻고 싶은 것은 == 새 쿠키 파일을 만든 후 이 명령을 다시 실행하세요. 왜 setcookie()의 시간이 ++++++++로 변경됩니까? 현재 시간은 date("y-m-d H:i:s")이고, 주석에 ---------가 있는 줄은 현재 시간 대신 마지막 시간을 출력할 수도 있습니다. 그러면 비고에 ****가 있는 줄이 나옵니다. *********근데 출력은 현재 시간이 맞네요== 무슨 일이 일어나고 있는 걸까요? .ㅜㅜ
PHP 중국어 매뉴얼에 이렇게 나와 있습니다
동일 매개변수에 대한 쿠키를 다시 설정하기 전에 먼저 쿠키를 삭제해야 합니다. 매개변수의 값이 빈 문자열 또는 FALSE이고 다른 매개변수가 여전히 setcookie에 대한 마지막 호출과 동일한 경우 지정된 이름은 원격 클라이언트에 의해 삭제됩니다.
문제가 해결되기를 바랍니다