2015-01-08 2 views
0

$_SESSION 배열에서 선택한 변수를 만료시켜야하는 프로그램을 작성하고 있습니다.

는 지금은 전체 $_SESSION 변수를 만료하는 방법을 알고 있지만, 내 필요가 즉 단 1 일 이후에 $_SESSION['trial_period_1'], $_SESSION['trial_period_credits'] 변수를 만료, 선택입니다.

사용자가 로그인 상태를 유지하기를 원하면 평가 기간 변수를 끝내기 만하면됩니다 (세션 시간 초과는 1 개월 임).

나는 이런 식으로 생각하고 있었지만 누군가가 이것에 대해보다 우아한 해결책을 알고 있다고 확신하기 때문에 질문을하기로 결정했습니다.

$_SESSION['trial_period_credits'] = 4; $_SESSION['trial_period_credits_expire'] = time() + 86400;

그런 다음이 작업을 수행 할 수있는 더 나은 방법이 있나요 각 변수

if ($_SESSION['trial_period_credits_expire'] < time()) { ...

위해 매일 시간을 확인? 불필요한 세션 변수를 많이 만들어야하므로 내 솔루션이 복잡해 보입니다.

+1

해제 ($ _ SESSION [ 'TRIAL_PERIOD_1']); –

답변

1

unset을 사용하십시오. 로 시도 - unset을 키를 식별

if ($_SESSION['trial_period_credits_expire'] < time()) { 
    unset($_SESSION['trial_period_1']); 
    unset($_SESSION['trial_period_credits']); 
} 
0

및 사용

if ($_SESSION['trial_period_credits_expire'] < time()) { 
    unset($_SESSION['trial_period_1']);// will unset the $_SESSION for key trial_period_1 only.rest of the $_SESSION will remain. 
}