Warning: Undefined array key "mobile_dir" in /home/kagla/new-sir/old/common.php on line 315
디비 또는 POST로 받은 xml 데이타 파싱 문의드립니다

디비 또는 POST로 받은 xml 데이타 파싱 문의드립니다

디비 또는 POST로 받은 xml 데이타 파싱 문의드립니다

QA

디비 또는 POST로 받은 xml 데이타 파싱 문의드립니다

답변 2

본문

디비에서 불러온 값이 있습니다.

<?php
$Files = '<Root><File Size="310330"><Ori>IMG1k.jpg</Ori><Name>11.jpg</Name><Url>/data/</Url></File><File Size="802710"><Ori>IMG2g.png</Ori><Name>21.png</Name><Url>/data/</Url></File><File Size="107322"><Ori>IMG3v.png</Ori><Name>g3.png</Name><Url>/data/</Url></File><File Size="123443"><Ori>IMG4s.png</Ori><Name>rr.png</Name><Url>/data/</Url></File><File Size="684443"><Ori>IMG5w.png</Ori><Name>y5.png</Name><Url>/data/</Url></File><File Size="140683"><Ori>IMG6g.png</Ori><Name>6w.png</Name><Url>/data/</Url></File>
</Root>';

?>

 

이것을 보기좋게 엔터를 처보면 아래와 같습니다.

개수는 여러가지로 변경될수 있어요

 

<?php
$Files = '<Root>
<File Size="310330"><Ori>IMG1k.jpg</Ori><Name>11.jpg</Name><Url>/data/</Url></File>
<File Size="802710"><Ori>IMG2g.png</Ori><Name>21.png</Name><Url>/data/</Url></File>
<File Size="107322"><Ori>IMG3v.png</Ori><Name>g3.png</Name><Url>/data/</Url></File>
<File Size="123443"><Ori>IMG4s.png</Ori><Name>rr.png</Name><Url>/data/</Url></File>
<File Size="684443"><Ori>IMG5w.png</Ori><Name>y5.png</Name><Url>/data/</Url></File>
<File Size="140683"><Ori>IMG6g.png</Ori><Name>6w.png</Name><Url>/data/</Url></File>
</Root>';

?>

 

최종적으로 추출하고 싶은 형태는  <Url></Url> 값과 <Name></Name> 값을 이용해서 아래와 같은 결과를 얻고자 합니다.

 

<img src='/data/11.jpg'><img src='/data/21.jpg'><img src='/data/g3.jpg'><img src='/data/rr.jpg'><img src='/data/y5.jpg'><img src='/data/6w.jpg'>

 

구글링을 다수 해봤는데  xml 파일을 가져와서 추출하는 내용은 많은데

디비의 데이타를 가져와서 그것을 추출하는 형태는 보이지 않네요

결국 실력부족이라서 여러분의 도움의 손길을 기다립니다.

이 질문에 댓글 쓰기 :

답변 2


$Files = '~~~~~~~~~~';
$xml = simplexml_load_string($Files);
foreach($xml->File as $obj){
    echo $obj->Url;
    echo $obj->Name;
}

구글링하면서 simplexml_load_string 이 파일을 호출할때만 사용가능한건가 생각했습니다.
호출된 데이타에도 적용이 가능한 것이었네요. 안될꺼라는 생각했는데...
소중한 시간내서 답변 감사합니다. 감동입니다.

echo preg_replace('#.+?<Name>([^<]+)</Name><Url>([^<]+)(</[^>]+>)+#', "<img src='$2$1'>", $Files);

답변을 작성하시기 전에 로그인 해주세요.
QA 내용 검색
질문등록
전체 129,406
© SIRSOFT
현재 페이지 제일 처음으로