Re: [請益] html unicode
※ 引述《Gjoy (鬼接)》之銘言:
: 大家好 剛接觸php ,就遇到資料庫編碼的問題
: 有個狀況是這樣的
: 資料庫編碼是utf8,但是存進去的資料是big5
: 因此有些字在資料庫裡是 伃 (伃)這種html unicode
: 本來最主要是輸出到web
: 這交給web browser會自動轉成正確的big5沒問題
: 但若是要把資料丟給其他程式讀的時候
: 就會在一堆字中出現幾個伃這樣的符號
: 因為一些原因 無法去更改資料庫編碼 因此只能從程式這端來處理
: 請問是否有什麼函式 能直接在資料撈出後自動判斷然後轉正呢?
: 或是要做更複雜的處理 (例如讀出來然後逐字比對,若比對到&#就再找解碼的函式..)
http://github.com/buganini/bsdconv
如果你是用FreeBSD或Linux可以試一下
FreeBSD在/usr/ports/converters/
底下有
bsdconv library and utils
p5-bsdconv for perl
php5-bsdconv for php
Linux編譯的時候LDFLAGS要加個-ldl
PREFIX預設是在/usr/local/
以下以prefix=/usr來說
裡面有php的wrapper
外面先make PREFIX=/usr && sudo make install之後
到wrapper/php/
phpize
./configure --with-bsdconv=/usr
make
make install
然後php裡面可以用
$h=bsdconv_create('htmlentity,big5,ascii::utf-8');
$str=bsdconv($h,$str);
bsdconv_destroy($h);
就可以把$str轉成utf-8
--
國愛‧主民‧學科‧康健‧道人
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 220.135.231.23
※ 編輯: buganini 來自: 220.135.231.23 (07/16 02:34)
※ 編輯: buganini 來自: 220.135.231.23 (07/16 03:34)
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 2 之 3 篇):
PHP 近期熱門文章
PTT數位生活區 即時熱門文章