YesYo.com MintState Forums  
뒤로    YesYo.com MintState BBS > Tech > PHP
검색
멤버이름  오토
비밀번호 
 

 
작성일 : 14-12-08 12:36
serialize unserialize 배열정보를문자열의 형태로 변환
 글쓴이 : MintState
조회 : 2,553  
serialize unserialize 배열정보를문자열의 형태로 변환

저는 잘안쓰긴 하는데 가끔씩 필요가 있어서 기록합니다.

string serialize(mixed value)
변수의 데이터를 저장 및 복원이 가능한 형태로 반한다.

value를 어디에나 저장이 가능하다 원래의 데이터로 복원할 수 있는 정보를 가진 문자열의 형태로 반환한다.
주로 value는 배열이 오는데 get 이나 post 로 데이터를 전송할때 변환해서 전송하는 방식이다.
변환방식은 원래 가진 값과 구조를 바이트 스트림(byte-stream)으로 변환하는 방식이다.

mixed unserialize(string str)
serialize()로 변환된 데이터를 원래의 데이터로 복원한다.

str를 원래의 데이터로 복원시키는 역할을 한다.

예제
<?
$foods = array("food" => "pizza", "beverage" => "cola", "fruit" => array("apple", "strawberry", "coconut"));

// 배열($foods)을 복원가능한 형태의 데이터로 변환하여 반환한다. 
$serialized_foods = serialize($foods);
echo $serialized_foods;
// a:3:{s:4:"food";s:5:"pizza";s:8:"beverage";s:4:"cola";s:5:"fruit";a:3:{i:0;s:5:"apple";i:1;s:10:"strawberry";i:2;s:7:"coconut";}}
?>
<a href="test2.php?foods=<?=urlencode($serialized_foods)?>">serialize 함수 사용 전과 후의 결과보기</a>


예제 test2.php
<?
echo "unserialize 전 : <p>";
echo "[타입] : " . gettype($_GET["foods"]) . "<br>";
echo "[값] : " . $_GET["foods"] . "<p>";
/*
unserialize 전 : 
[타입] : string
[값] : a:3:{s:4:\"food\";s:5:\"pizza\";s:8:\"beverage\";s:4:\"cola\";s:5:\"fruit\";a:3:{i:0;s:5:\"apple\";i:1;s:10:\"strawberry\";i:2;s:7:\"coconut\";}}
*/

// serialize() 함수로 변환된 데이터를 원래의 배열로 복원시킨다.
$new_foods =unserialize(stripslashes($_GET["foods"])); 
//urlencde()들어온 값은 " 앞에 역슬러쉬릴 붙이므로 반듯이 stripslashes() 한다

echo "unserialize 후 : <p>";
echo "[타입] : " . gettype($new_foods) . "<br>";
echo "[값] : ";
print_r($new_foods);
/*
unserialize 후 : 

[타입] : array
[값] : 
Array
 (
 [food] => pizza
 [beverage] => cola
 [fruit] => Array
  (
   [0] => apple
   [1] => strawberry
   [2] => coconut
  )
 )
*/
echo $new_foods[food]; //pizza
?>


출처 : http://dance2i.tistory.com/122
Rated 0/5 (0%) (0 Votes)

(\__/)
(='.'=)
(")_(")~
Search Infomation by MintState
MintState

 
 

Total 160
번호 제   목 글쓴이 날짜 조회
160 첫문자를 대문자, 소문자로 변경하는 함수 MintState 08-08 245
159 header를 이용한 페이지 이동 함수 MintState 07-31 248
158 URL에서 한글만 인코딩 MintState 05-29 349
157 youtube preg_replace pattern MintState 02-22 635
156 특정 디렉토리의 하위파일 목록 가져오기 MintState 02-21 631
155 [정규식] 해시태그(#) 뽑아내기 MintState 11-12 2530
154 serialize unserialize 배열정보를문자열의 형태로 변환 MintState 12-08 2554
153 실시간 화면 출력 flush, ob_flush MintState 02-26 5000
152 [MYSQL] 생년월일로 나이 반환 MintState 01-22 7027
151 php 절사 MintState 07-27 4890
150 Referer URL 이용하여 검색엔진 키워드 뽑아내기 MintState 02-10 5437
149 달력 소스 MintState 10-21 5693
148 MYSQL 예약어 MintState 05-02 7925
147 페이징 클래스 v1.0 (PHP4/5) MintState 04-18 6767
146 GD 라이브러리 MintState 04-17 7313
145 GD를 이용한 기본기능 썸네일,CROP,CROP썸네일,텍스트 만들기 MintState 04-17 6883
144 xml 통신(수신) - Web 언어별 MintState 03-14 7225
143 무조건 알아야 할 PHP 속도 테스트 14 가지 MintState 03-04 6956
142 PHP를 이용하여 MYSQL Sleep 프로세스 죽이기 MintState 01-18 8548
141 youtube 주소로 정보 반환 MintState 07-02 8703
140 방문자의 브라우저와 OS등을 가져 오는 클레스 MintState 07-02 11206
139 Allowed memory size Error 발생시 처리방법 MintState 06-30 9169
138 AES 256-bit 암호화 MintState 04-28 14649
137 PHP 5.3.0 부터 POSIX Regex 함수 제거 MintState 02-12 8513
136 [Function] json_encode(), json_decode() MintState 01-13 14763
 1  2  3  4  5  6  7  
모바일 버전으로 보기
CopyRight ©2004 - 2017, YesYo.com MintState. ™