CI 묻고 답하기

제목 CI XML 파싱 시 특수문자(대시)가 먹히지 않는 현상
카테고리 CI 2, 3
글쓴이 DominicKim 작성시각 2020/07/16 17:29:39
댓글 : 3 추천 : 0 스크랩 : 0 조회수 : 11574   RSS

안녕하세요.

현재 파서 개발 중에 문제가 발생해서 질문 한가지만 여쭙고자 글을 작성해봅니다.

XML 자체의 틀을 변경하는 것은 불가능하고, 함수로써 해결해야 하는데요.

기존 다른 파서의 경우 아래 강조한 부분과 같이 " - " 특수문자가 없었는데.

이번 파일의 경우 대시 기호가 문제가 되네요.

 

해당 문제를 $string = "executive-summary";

$xml->content->$string 와 같은 방식으로 해결해보려고 했으나 아무런 값도 나오지 않습니다.

특수한 방법이 필요할 것 같은데. 제가 접근 방식이 잘못된 건지 해결을 할 수 가 없네요.

해외 포럼이나 국내 블로그에선 찾아보기가 어렵네요ㅜㅜ

 

고수님들께 자문을 구해봅니다 !!! 

 

xml data


<xml-report name="AppScan Report" technology="DAST" xmlExportVersion="2.42">

  <content>

    <executive-summary>1</executive-summary>

    <issues>1</issues>

    <table-of-content>1</table-of-content>

    <introduction>1</introduction>

    <by-url>0</by-url>

    <fix-recommendations>1</fix-recommendations>

    <variants>1</variants>


 

code

 


print_r($xml->content->executive-summary);   // 강조한 부분에서 에러 발생, 대시를 수학기호로 착각해 마이너스 하려고 하는 것 같음


 

error message


Use of undefined constant summary - assumed 'summary' (this will throw an Error in a future version of PHP)


 

 다음글 라우팅 파라메터에 '녀'가 들어가면 Not Found ... (3)
 이전글 이미지처리클래스 quality 질문있습니다. (2)

댓글

DominicKim / 2020/07/16 18:22:41 / 추천 0
        $xml = simplexml_load_string($object);
        $json = json_encode($xml);
        $array = json_decode($jsonTRUE);
DominicKim / 2020/07/16 18:23:02 / 추천 1
xml 에 대한 집착을 버리고 json 형식으로 변환 후 문제해결하였습니다.
한대승(불의회상) / 2020/07/16 20:47:30 / 추천 0

사족으로...

$array = json_decode(json_encode($xml), TRUE);

하면 변수 하나 줄일수 있을듯... ^^