2009-10-01 62 views
2

我正在使用notepad ++進行php編碼。UTF-8編碼問題

我對使用ANSI中的Encode設置的格式沒有任何問題。

但是,當我使用UTF-8編碼時,無論是在頂部還是一個奇怪的字符或沒有顯示任何東西。

Q1。我應該使用ANSI嗎? Q2。爲什麼我在使用UTF-8時無法顯示任何東西?我的頭文件的代碼如下。

<html> 
<head> 
<title>Hello, PHPlot!</title> 
</head> 

這是因爲我沒有在標頭中使用UTF-8?

+0

記事本++和它們錯誤的標籤:編碼的名稱是ASCII,而不是ANSI。 – Gumbo 2009-10-01 10:23:00

回答

7

這可能是Byte Order Mark。您可以在記事本++中使用'無BOM中的UTF-8編碼'模式。

This question有關於在PHP中使用UTF-8的一些有用信息。您也會(如您所建議的)需要在標題或元標記中設置內容類型,以便瀏覽器正確解釋它。

0

聽起來好像您正在使用帶有BOM(其中有issues)的UTF-8,並且您的服務器未能正確地specify the encoding

IIRC,BOM在記事本中是不可避免的,所以我建議使用更好的編輯器。我自己喜歡Komodo Edit

(還要注意,一個Doctype在HTML文件要求)

+0

在默認編輯器編碼中,您在Komodo Edit中的設置是什麼? – shin 2009-10-01 10:57:54

+0

它被設置爲UTF-8 – Quentin 2009-10-01 11:07:43

0

當湯姆黑格說,它可能是BOM。對於UTF-8編碼沒有必要,所以您可以放心地將它們排除在外。

但是我應該指出,PHP對UTF-8的支持非常薄弱 - 爲顛簸行程做好準備。查看this page瞭解可能遇到的問題的某些詳細信息。