소셜로그인 중단 안내

계정으로 로그인 기능이 2023년 11월 16일 중단되었습니다.

아이보스 계정이 사라지는 것은 절대 아니며, 계정의 이메일 주소를 이용해 로그인 하실 수 있습니다.

▶️ 자세한 공지사항 확인

세션을 기준으로 한 간단한 현재 접속자

2007.12.17 13:17

유창화

조회수 4,058

댓글 0

<?php

//현재 접속자 가져오기
function Yget_in_user($dir_session){
$time1 = 60 * 1;//활동중인 현재 접속자 기준 1분
$time2 = 60 * 5;//현재접속자의 기준 5분
if (empty($dir_session)) return Array();
if (!is_dir($dir_session)) return Array();
$dir_array = Yget_filelist_in_dir($dir_session);
$return['cnt_total'] = $return['cnt_active'] = $return['cnt_inactive'] = 0;
foreach($dir_array as $val){
if (filemtime($val) < (time() - $time2)) continue;
else $return['cnt_total']++;
if (filemtime($val) > (time() - $time1)) $return['cnt_active']++;
else $return['cnt_inactive']++;
}
return $return;
}

//넘어온 디렉토리의 모든 일차 파일리스트를 배열로 반환
function Yget_filelist_in_dir($dir_path){
$dir_path = preg_replace("`/+$`", '', $dir_path);
if(!is_dir($dir_path)) return Array();
$return_file = Array();
$d = dir($dir_path) or die('해당 디렉토리(' . $dir_path . ')를 열수 없습니다.');
while (false !== ($entry = $d->read())) {
$temp_file = $dir_path . '/' . $entry;
if (is_file($temp_file) && !preg_match("`\.$`", $temp_file)) {
$return_file[] = $temp_file;
}
}
$d->close();
return $return_file;
}

//현재 접속자 가져오기, 세션을 저장하는 디렉토리 경로를 절대경로 or 상대경로로서 인자로 넘김, $dir_data_session
$in_user_cnt = Yget_in_user($dir_data_session);

?>
<!-- 출력 //-->
[현재 접속자] total : <?=$in_user_cnt['cnt_total']?>, active : <?=$in_user_cnt['cnt_active']?>, inactive : <?=$in_user_cnt['cnt_inactive']?>




[참고]
윈도우 머신에선 되지 않을 것같습니다. 확인해 보지 않았습니다.
리눅스, 유닉스 머신에선 잘 될것입니다. 유닉스 머신에선 확인하지 않았습니다.
목록
댓글 0

아직 등록된 댓글이 없습니다.
유창화님의 게시글에 첫번째 댓글을 남겨보세요.

댓글 새로고침
목록
로그인 후 더욱 많은 기능을 이용하세요!아이보스 로그인
아이보스 칼럼전체보기