파란색 코드의 용도는 뭔가요?
본문
질문 답변 둘러보다 아래 답변을 봤는데..... 관련글 https://sir.kr/qa/391512게시글 본문에 어떤 식으로 값을 입력해야 파란색 부분이 적용되어 값이 나오는지? ( PS. 아미나에 추가된 함수.<?php $sql = "select wr_content from g5_write_korea where mb_id = '{$member['mb_id']}' order by wr_id desc limit 1"; $row = sql_fetch($sql); // 아래 2줄의 코드 의미? $wr_data = apms_unpack($row['wr_content']); echo $wr_data['seoul']; ?>
function apms_unpack($set) { if(!$set) return; $arr = array(); $tmp = unserialize($set); if(!empty($tmp)) { foreach($tmp as $key=>$value) { $arr[$key] = str_replace("/r/n/","\r\n", stripslashes(str_replace("\\r\\n","/r/n/",$tmp[$key]))); } } return $arr; }
답변 3
본문 내용에 값을 직접 넣는 것이 아니라 입력폼에서 넘어온 값들이나
배열을 serialize시킨 것으로 보입니다
아래 처럼 테스트 해보세요
$ssArr=array('wr_id'=>10, 'wr_name'=>'ktg', 'wr_subject'=>'가나다');
$wr_content =serialize($ssArr); <----이것을 wr_content='$wr_content' 이런 형테로 저장한 것이겠죠
$wr_data = apms_unpack($wr_content );
echo $wr_data['wr_name'];
print_r($wr_data);
직렬화된 데이터를 다시 배열값으로 바꾸는 형태입니다
예전에는 많이 쓰였는데 요즘은 json이 해당 기능을 거의 다 대체하고 있기에 잘 안쓰입니다.
http://sandbox.onlinephpfunctions.com/code/ab93a11afbec0db7053c2008b7bb41d2224350fa
아미나 빌더의 위젯 설정 데이터가 이런 형태로 저장되어 있습니다. g5_apms_data 테이블 data_set 칼럼
답변을 작성하시기 전에 로그인 해주세요.