제 질문은 쉽습니다. 하지만 나는 XML에 관심이 없다. 그래서 그것은 나를 위해 이해할 수 없습니다. 설치 프로그램이 있으며 언어 파일은 xml 형식입니다. 터키어 파일은 다른 언어보다 매우 좁습니다. 그래서 "turkish.xml"을 "general.xml"으로 가져 오려고합니다. "general.xml"파일에서 동일한 노드가 있으면 노드 값이 변경됩니다. 그렇지 않다면 그대로 유지하십시오. 예를 들어 이것은 내 turkish.xml의 내용입니다. 나는 그것을 관리하는 경우다른 xml 파일의 내용을 xml 파일 문자열 값으로 변경하십시오.
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<DICTIONARY type="singlelanguage" lang="neutral" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="dictionary.xsd">
<STRING id="AI.Directory.DefaultDefaultDir" value="New Folder"/>
<STRING id="AI.Directory.Default32BitName" value="32-bit"/>
<STRING id="AI.DuplicateFile.DestName" value="Duplicate%s of %s"/>
<STRING id="AI.Feature.DefaultTitle" value="Feature"/>
</DICTIONARY>
, 그것은 다음과 같이 될 것입니다 :
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<DICTIONARY type="singlelanguage" lang="tr" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="dictionary.xsd">
<STRING id="AI.Directory.DefaultDefaultDir" value="Yeni Klasör"/>
<STRING id="AI.Directory.Default32BitName" value="Otuziki bit"/>
</DICTIONARY>
그리고 "general.xml"파일 아래
는<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<DICTIONARY type="singlelanguage" lang="neutral" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="dictionary.xsd">
<STRING id="AI.Directory.DefaultDefaultDir" value="Yeni Klasör"/>
<STRING id="AI.Directory.Default32BitName" value="Otuziki bit"/>
<STRING id="AI.DuplicateFile.DestName" value="Duplicate%s of %s"/>
<STRING id="AI.Feature.DefaultTitle" value="Feature"/>
</DICTIONARY>
나는 그것을 관리하는 방법을 모른다 . 친절하게 생각합니다.
당신이와 아무것도 너무 많은 루프를하고 있습니다. DOMDocument, checkout ['getElementById()'] (http://php.net/manual/en/domdocument.getelementbyid.php)를 선택하면 turkish 요소의 id로 일반 요소를 얻을 수 있습니다. 큰 문서를 변경하는 작은 문서에 대해 하나의 foreach를 사용하여이 작업을 수행 할 수 있습니다. –
은 구조에 몇 개의 STRING 요소가 있는지에 따라 달라집니다. – Piddien