我用每一個PHP頁面下面的語句設置連接到Unicode:mysql:SET NAMES utf8在每個連接上?
mysql_query ('SET NAMES utf8');
有沒有一種方法,我可以跳過這個?通過在服務器上設置一些東西?我有一個VPS,所以我應該能夠訪問任何東西。
我認爲真正的問題是:我需要嗎?它會加快速度嗎?我爲每個交付的HTML頁面跳過這條語句?
我用每一個PHP頁面下面的語句設置連接到Unicode:mysql:SET NAMES utf8在每個連接上?
mysql_query ('SET NAMES utf8');
有沒有一種方法,我可以跳過這個?通過在服務器上設置一些東西?我有一個VPS,所以我應該能夠訪問任何東西。
我認爲真正的問題是:我需要嗎?它會加快速度嗎?我爲每個交付的HTML頁面跳過這條語句?
可以修改mysql的配置(my.cnf中)
[client]
default-character-set=utf8
[mysqld]
default-character-set=utf8
爲什麼不在每個頁面中都包含一個配置文件,其中包含與創建數據庫連接相關的所有內容?
這條線是nesseccary,因爲你真的在DB搞砸數據編碼(在那裏,這樣做:))可以
無論何時啓動新的連接,都可以通過運行該命令來實現無任何傷害和有效的零性能影響。
如果您想更改服務器配置,請撥打here is the appropriate manual page on setting the connection character set defaults。您還需要閱讀關於默認的其餘部分。
'[mysqld]'下的行是否真的有必要? – Flimm
這不是必須的(實際上它毫無意義),因爲'default-character-set'僅用於客戶端。如果你的客戶端是** mysql **,那麼只有提到的「default-character-set = utf8」纔會起作用。在所有其他情況下,您必須設置「SET NAMES x」。所以,** mysqld **部分下的選項是沒有意義的。 – gahcep