2017-01-01 3 views
0

php SimpleXMLElement으로 sitemap.xml 파일을 만들고 싶습니다. 내 링크가 페르시아어 (페르시아어) 언어를 포함 할 때 문제가 있습니다. 아웃 풋 파일은 persain word를 질문 기호 (????)로 변경합니다.PHP로 UTF-8로 XML 파일 저장하는 방법 SimpleXMLElement

xml 파일을 utf-8으로 저장하려면 어떻게해야합니까? SimpleXMLElement?

내 샘플 코드는 다음과 같습니다

$a='<?xml version="1.0" encoding="UTF-8" ?> 
    <urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
xsi:schemaLocation="http://www.sitemaps.org/schemas/sitemap/0.9 
http://www.sitemaps.org/schemas/sitemap/0.9/sitemap.xsd"> 

    <url> 
     <loc>www.example.com/page-test/صفحه-تست/</loc> 
     <changefreq>daily</changefreq> 
     <priority>0.95</priority> 
    </url> 
</urlset>'; 
    $xml= new SimpleXMLElement($a); 
    $xml->asXML("sitemap.xml"); 

아웃은 다음과 같이 넣어 :

<loc>www.example.com/page-test/?????-?????/</loc> 

답변

-2

여기 생각 당신은 urlencode() 또는 htmlentities() 적절한 방법 사용, 전체 경로를 인코딩 할뿐 아니라 특수 문자.

Demo here.

www.example.com%2Fpage-test%2F%D8%B5%D9%81%D8%AD%D9%87-%D8%AA%D8%B3%D8%AA%2F 
+0

downvote –

+0

에 대한 이유를 설명 할 것입니다. 그는 SimpleXML을 사용하고 있습니다. 귀하의 대답은 질문을 해결하지 않습니다 – Machavity

+0

xml이긴하지만 PHP 클래스이기도합니다. 왜 PHP 함수 urlencode()를 호출 할 수 있습니까? –