unserialize... 배열 값 추출 문의
본문
https://sir.kr/qa/484649?unanswered=0
이전 질문에 베르만 님이 답변 주셨는데요..
object 의 array 의 값을 어떻게 추출해야할까요?;;;;
이래저래 해봐도 잘 모르겠고,,, 계속 뻘짓 중이네요ㅠㅠ
$memberStr = 'O:8:"stdClass":3:{s:15:"xe_validator_id";s:20:"modules/member/tpl/1";s:2:"te";a:3:{i:0;s:0:"";i:1;s:0:"";i:2;s:0:"";}s:3:"te2";a:3:{i:0;s:3:"010";i:1;s:4:"1234";i:2;s:4:"5678";}}';
$memberInfo = unserialize($memberStr);
print('<pre>');
print_r($memberInfo);
print('</pre>');
/*
stdClass Object
(
[xe_validator_id] => modules/member/tpl/1
[te] => Array
(
[0] =>
[1] =>
[2] =>
)
[te2] => Array
(
[0] => 010
[1] => 1234
[2] => 5678
)
)
*/
----- 요기까지가 답변주셨던 내용이구요!
te2의 값을 추출하기위해
// Simple class definition
class User {
// Class data
public $te2 = '';
// Print data
public function PrintData() {
echo 'User TEL : ' . $this->te2 . '. <br />';
}
}
// Create a user
$memberInfo = unserialize($memberStr);
// Print data
$memberInfo->PrintData();
계속 오류가 나네요 ㅠ
도움을 요청합니다!
답변 1
대댓에도 달아드렸는데
언시리얼라이즈로 풀어놓은 상태 자체가 standard class 이기 때문에
별도 class 정의 없이 바로 뽑아 사용하면 됩니다.
<?php
echo $memberInfo->xe_validator_id;
echo $memberInfo->te2[0];
?>
으로 하시면 됩니다.
!-->
답변을 작성하시기 전에 로그인 해주세요.