용오름체험휴양마을영농조합법인 / 홍천 용오름캠핑장 팸투어 다녀왔어요.

용오름체험휴양마을영농조합법인 / 홍천 용오름캠핑장 팸투어 다녀왔어요.강원도 홍천 서석면에 위치해있으며 1급수 용오름계곡 바로 옆에 있습니다.홍천군 1등 마을로 마을에서 직접 관리하는 용오름캠핑장,펜션 10개를 운영하고 있으며 각종 모임이 가능하도록 식당,회의실,야외무대가 설치되어 있습니다.홍천군 1등 마을답게 캠핑장,펜션 마을 전지역 wi-fi 사용이 가능하며 매년 봄 팸투어 실시, 여름엔 마을에서 재배한 홉으로 직접만든 맥주축제,마리소리 음악축제 를 열고 있습니다.계곡의 경우 수심이 다양하여 다이빙 포인트가 2곳이 있으며 아이들이 안전하게 물놀이를 할 수 있는 곳도 여러 곳 있습니다.홍천 용오름캠핑장 팸투어 다녀왔어요.요즘은 농산촌체험마을에서 캠핑과 여러프로그램을 같이 하는 곳이 추세더라고요. 아미산이 둘러쌓인 청정계곡이 흐르는 아름다운 용오름체험휴양마을 에서 운영하는 홍천 용오름캠핑장 팸투어 다녀왔어요. 테크 앞 강이...붕어빵 가족의 담너머 세상구경https://m.blog.naver.com/1092119/220711235599가을여행-홍천여행- 홍천 용오름 마을 첫째날여행의 계절 가을입니다. 요즘 저희는 강원도에 꽃힌 상태인지라...카페 행복한 이티씨와 함께하는 홍천 용오름 마을 1박2일 체험에 참가를 하였답니다! 평소 체험 시간보다 조금 늦은 출발을 해서 차가 밀리지 않으려나...귀여운 단지https://m.blog.naver.com/sanguidan/50181593653용오름마을 캠핑장여름휴가의 시즌이다.. 강원도의 계곡과 시원함을 만끽하기 위해 캠핑장을 검색하다 우연히 알게 된 홍천의 용오름 캠핑장.. 성수기라 캠핑장 요금들이 사악하다 용오름캠핑장 옆엔 해미르 캠핑장이 있는데...★살로몬의 잇츠캠핑★https://m.blog.naver.com/freeguy9040/20163628934맥주효모로 만든 용오름맥주마을 바쏘 맥주샴푸와 맥주마스크팩...1988년까지 맥주 원료인 홉을 재배하며 번성했던 강원도 홍천군 서석면 용오름 마을이란 곳이 있었습니다…

[PHP] 직렬화(Serializable)

[PHP] 직렬화(Serializable)

안녕하세요. 명월입니다.

이 글은 PHP에서 직렬화를 사용하는 방법에 대한 글입니다.

예전에 Java나 C#에서 직렬화에 대한 설명을 한 적이 있습니다.

링크 - [Java] 직렬화(Serializable)

링크 - [C#] 직렬화(Serialization)

직렬화한 클래스나 배열등의 리스트를 바이너리화 하는 것을 직렬화라고 합니다. 솔직히 PHP에서는 이 직렬화를 잘 사용하지는 않습니다.

C#이나 Java에서는 소켓 통신등에서 서버와 클라이언트가 같은 언어라고 했을 때 클래스의 데이터를 그대로 전송하기 위한 목적으로 자주 사용하는데 PHP에서는 소켓 통신을 잘 사용하지 않습니다.

전혀 사용하지 않는 것은 아닙니다만, 거진 PHP와 다른 언어 즉, Java나 C#으로 이루어진 서버 환경과 통신을 하지, 같은 PHP간의 통신은 없다고 봐야 합니다.

왜냐하면 여러 apache로 이루어진 다중 서버라고 한다면 Session share로 넘기는 것이 더 편하기 때문입니다.이 session에 저장할 때 클래스 타입이나 배열 타입을 넣게 되면 이 직렬화로 session에 들어갈 것입니다. 그건 PHP측에서 자동으로 해주기 때문에 프로그래밍을 하는 입장에서는 필요가 없습니다.

그런데도 필요할 때가 있는데, Session간에 데이터를 share링하거나 데이터를 클래스 형식으로 보존해야 할 경우는 사용할 수 있겠네요.링크 - https://www.php.net/manual/en/function.serialize.php

링크 - https://www.php.net/manual/en/function.unserialize.php

count = 0; $this->connectTime = date("Y-m-d h:i:s A"); } // set함수가 호출되면 count는 1이 증가되고 현재 시간의 값을 마지막 접속 시간으로 바꾸고 현재 시간의 값은 새로 넣는다. public function set(){ $this->count = $this->count +1; $this->lastTime = $this->connectTime; $this->connectTime = date("Y-m-d h:i:s A"); } // Count 값을 가져온다. public function getCount(){ return $this->count; } // 마지막 접속 시간을 가져온다. public function getLastTime(){ return $this->lastTime; } } // 직렬화된 클래스 값을 가져온다. function getData($file){ // 파일이 존재하지 않으면 SessionCount라는 클래스를 생성한다. if (!file_exists($file)) { return new SessionCount(); } try{ if(@$handle = fopen($file, 'r')) { $contents = fread($handle, filesize($file)); } // 직렬화된 파일을 역직렬화하여 클래스를 생성한다. return unserialize ($contents); } catch(Exception $e){ print_r($e); die(); } finally{ @fclose($handle); } } // 클래스의 값을 파일로 저장한다. function setData($file, $clz){ try { // 클래스의 값을 직렬화한다. $contents = serialize ($clz); if (@$handle = fopen($file, 'w')) { // 파일로 저장한다. fwrite($handle, $contents); } } catch (Exception $e) { print_r($e); } finally{ @fclose($handle); } } // 직렬화할 데이터를 저장할 경로 $file = 'd:\file\serialize.data'; // 클래스를 가져온다. 만약 파일이 없으면 new로 새로운 할당을 한다. $clz = getData($file); $clz->set(); // 직렬화를 하여 파일로 클래스를 저장한다. setData($file,$clz) ?> title count = getCount()?> last connect Time = getLastTime()?>

접속을 하니 현재 카운터와 마지막 접속 시간이 나옵니다.

직렬화된 파일이 제대로 폴더에 저장이 됩니다. 직렬화된 파일을 보니 데이터가 직렬화 형태의 값으로 저장되어 있습니다.

여기서 제가 새로고침을 몇 번 누르게 되면 카운터는 계속 증가하게 됩니다.

여기까지 PHP에서 직렬화를 사용하는 방법에 대한 글이었습니다.

궁금한 점이나 잘못된 점이 있으면 댓글 부탁드립니다.

from http://nowonbun.tistory.com/631 by ccl(A)

댓글

이 블로그의 인기 게시물

용오름체험휴양마을영농조합법인 / 홍천 용오름캠핑장 팸투어 다녀왔어요.

[C언어] 백준 알고리즘 - 숫자의 개수(2577번)

[2020 정보처리기사 실기 - 프로그래밍 언어 활용] 2. 언어 특성 활용...