>  기사  >  백엔드 개발  >  PHP 사용자 정의 file_php 팁에 세션을 저장하는 방법

PHP 사용자 정의 file_php 팁에 세션을 저장하는 방법

WBOY
WBOY원래의
2016-05-16 20:28:301295검색

이 기사의 예에서는 PHP 사용자 정의 파일에 세션을 저장하는 방법을 설명합니다. 참고할 수 있도록 모든 사람과 공유하세요. 구체적인 구현 방법은 다음과 같습니다.

session.inc.php 파일: 세션의 파일 저장을 정의하며, 세션 솔루션은 PHP 스크립트에서 전역 변수를 정의하는 방법을 제공하여 이 전역 변수가 동일한 세션의 모든 PHP 스크립트에 유효하도록 합니다. 세션은 단순한 시간 개념이 아니라는 점은 모두 알고 있습니다. 세션에는 특정 사용자와 서버도 포함됩니다. 따라서 세션에 정의된 전역 변수의 범위는 모든 PHP에 대해 액세스되는 사용자를 나타냅니다. 예를 들어, 사용자 a는 세션을 통해 전역 변수 $user="wind"를 정의하고, 사용자 b는 세션을 통해 전역 변수 $user="jane"을 정의한 다음, 사용자 a가 액세스한 PHP 스크립트에서 $user의 값은 wind입니다. .

PHP에서 세션을 만드는 방법

세션을 생성하는 방법부터 시작해 보겠습니다. 세션을 시작하고 $admin 변수를 생성하는 방법은 매우 간단합니다.

세션 시작:

session_start();

admin이라는 변수를 선언하고 null 값을 할당합니다: $_session["admin"] = null;

seesion을 사용하거나 php 파일이 세션 변수를 호출하려는 경우 세션을 호출하기 전에 세션 변수를 시작해야 합니다. session_start() 함수를 사용하면 다른 것을 설정할 필요가 없습니다. php가 자동으로 세션 변수 생성을 완료합니다. 이 프로그램을 실행한 후 시스템 임시 폴더에서 세션 파일을 찾을 수 있습니다. 일반적으로 파일 이름은 sess_4c83638b3b0dbf65583181c2f89168ec 형식이며 그 뒤에 32비트로 인코딩된 임의 문자열이 옵니다. 내용을 살펴보세요: admin |n;, PHP 예제 코드는 다음과 같습니다:


코드 복사 코드는 다음과 같습니다.
//수퍼 글로벌 배열 정의
$_session = 배열()
//파일 핸들 정의
$fp = null

//사용자 정의 세션 열기 함수
함수 session_file_start() {

//1. 먼저 브라우저가 쿠키 값을 전송했는지 확인합니다.
if (isset($_cookie['fileid'])) {

//2. 쿠키 값 받기
$filename = $_cookie['파일ID']

//3. 읽고 쓰기 위해 파일을 엽니다
if (file_exists($filename)) {
$globals['fp'] = fopen($filename, 'r ')
} 다른 {
$globals['fp'] = fopen($filename, 'w')
}
} 다른 {
//2. 파일을 설정하고 쿠키에 파일 이름을 넣습니다
$filename = 날짜('ymdhis')
setcookie('fileid', $filename, time() 60*60*24)

//3. 읽고 쓰기 위해 파일을 엽니다
$globals['fp'] = fopen($filename, 'w')

} //if-else의 끝

//4. 파일의 데이터를 슈퍼 전역 배열 $_session
에 저장합니다. while (!feof($globals['fp'])) {
//파일에서 한 줄 읽기
$buffer = fgets($globals['fp'])
//읽은 줄 처리
$tmparr = 폭발('=', Trim($buffer, 'rn'))

//세션 배열에 추가
if (count($tmparr) == 2) {
$globals['_session'][$tmparr[0]] = $tmparr[1]
}
} //동안의 끝

} //session_file_start() 끝

//세션변수 등록 함수
function session_file_register($key, $val) {

//세션 변수 설정
$globals['_session'][$key] = $val

//이 변수를 파일에 넣습니다
fseek($globals['fp'], 0, 탐색_끝)
fwrite($globals['fp'], "$key=$valrn")
} //session_file_register() 끝
//세션 변수 종료
함수 session_file_destroy() {
//1. 파일 포인터를 닫습니다
fclose($globals['fp'])
$fp = null
//2. 세션 배열을 빈 상태로 설정합니다
$globals['_session'] = 배열()
} //session_file_destroy() 끝
테스트 코드 파일: 1.php

코드 복사 코드는 다음과 같습니다.
//인코딩 형식 결정
header('콘텐츠 유형: 텍스트/html; charset=utf-8')
include("세션 파일.php")
//테스트 함수:
//세션 열기
세션_파일_시작()
//세션 변수 등록
$key = '사용자 이름'
$val = 'lsl'
session_file_register($key, $val)
session_file_register('사용자 이름', '리사')
//세션 배열 인쇄
echo $_session['사용자 이름']; ?> 다음 페이지

테스트 파일: 2.php


성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
이전 기사:PHP_php 팁으로 막대 차트를 생성하는 방법다음 기사:PHP_php 팁으로 막대 차트를 생성하는 방법

관련 기사

더보기