MozTW 討論區 https://forum.moztw.org/ |
|
[請教] 如何用PHP讀XML的內容並正確顯示? https://forum.moztw.org/viewtopic.php?f=13&t=5382 |
第 1 頁 (共 1 頁) |
發表人: | Nelson [ 2004-12-30, 01:14 ] |
文章主題 : | [請教] 如何用PHP讀XML的內容並正確顯示? |
各位好,以下是我的XML程式碼 代碼: <?xml version="1.0" encoding="big5"?> <software > <legend class="系統安全"> <item></item> </legend> </software> 而我的 PHP 如下 代碼: $root = $doc->document_element();
$children = $root->child_nodes(); for ($x=0; $x<sizeof($children); $x++) // 每個 legend { $attribute = $children[$x]->attributes(); echo $attribute[0]->value; } 現在問題來了~ 明明我在 XML 裡頭的 encoding 是 big5 可是顯示出來之後卻總是亂碼, 但是把瀏覽器的編碼改成 UTF-8 就可以正常顯示, 為什麼會這樣呢 ? |
發表人: | member [ 2004-12-30, 01:46 ] |
文章主題 : | |
你可能要看一下 WEB 伺服器送出來的字碼為何. |
發表人: | 訪客 [ 2004-12-30, 02:38 ] |
文章主題 : | |
member 寫: 你可能要看一下 WEB 伺服器送出來的字碼為何.
要怎看呢? |
發表人: | Nelson [ 2004-12-30, 11:28 ] |
文章主題 : | |
Nelson 寫: 各位好,以下是我的XML程式碼
代碼: <?xml version="1.0" encoding="big5"?> <software > <legend class="系統安全"> <item></item> </legend> </software> 而我的 PHP 如下 代碼: $root = $doc->document_element(); $children = $root->child_nodes(); for ($x=0; $x<sizeof($children); $x++) // 每個 legend { $attribute = $children[$x]->attributes(); echo $attribute[0]->value; } 現在問題來了~ 明明我在 XML 裡頭的 encoding 是 big5 可是顯示出來之後卻總是亂碼, 但是把瀏覽器的編碼改成 UTF-8 就可以正常顯示, 為什麼會這樣呢 ? 自問自答,那是因為這個函式會把讀到的東西都自動轉成 UTF-8 解法: 用 iconv("UTF-8", "BIG5", 讀到的字串) 轉回來即可. |
第 1 頁 (共 1 頁) | 所有顯示的時間為 UTC + 8 小時 |
Powered by phpBB® Forum Software © phpBB Group https://www.phpbb.com/ |