2016-08-01 2 views
-2

으로 XML 파일을 읽고 내가 함께 포함 XML 파일이 같은 잘못된 문자 : 문제는이 문자 "<은"내가 어떻게이 파일을 읽을 수있다<문자 PHP

<model>A3 (2003-2013, 3.2V6 17"<)/</model> 

? 이 도움이

+0

파일의 출처는 어디입니까? 소스에서 XML을 고칠 수 있습니까? XML은 매우 엄격한 형식이며 XML 파서는 일반적으로 잘못된 XML을 매우 용인하지 않습니다. – Chris

+0

그 문제는 XML 파일을 변경할 수 없다는 것입니다 ... – andys

+2

글쎄, 엄밀히 말하면 그것이 잘못된 XML을 포함하고 있다면 그것은 XML 파일이 아닙니다. – Chris

답변

0

희망 ...

<?php 


$chars = '<model>A3 (2003-2013, 3.2V6 17"<)/</model>'; 

echo "<pre>". htmlentities($chars)."</pre>"; 

$tmp = ''; 


for ($i = 0; $i < strlen($chars); $i++) 
{ 
    if(!($chars[$i] == '<' && $chars[$i+1] == ')')) 
    { 
     $tmp = $tmp . $chars[$i]; 
    } 
} 

echo '<pre>'; 
echo htmlentities($tmp); 
echo '</pre>'; 

봅니다 행에 의해 파일 행을 읽는이 논리를 적용 할 수 있습니다. 각 행은이 함수로 "정리"된 다음 배열에 추가됩니다. 그런 다음 해당 배열을 사용하여 XML을 다시 작성할 수 있습니다.