Re: [請益] Big5 中文字問題

看板PHP作者 (wayne)時間16年前 (2009/07/16 02:37), 編輯推噓3(301)
留言4則, 2人參與, 最新討論串2/2 (看更多)
※ 引述《AreTheyYou (Birdy)》之銘言: : 我想要在編碼big5 顯示一個中文字 : 但那個中文字似乎是特殊字 : 顯示都是? : 在utf8就可以 : 有什麼辦法可以顯示嗎??? 我有寫一個function你就照著用吧 function utf8_2_big5($utf8_str) { $i=0; $len = strlen($utf8_str); $big5_str=""; for ($i=0;$i<$len;$i++) { $sbit = ord(substr($utf8_str,$i,1)); if ($sbit < 128) { $big5_str.=substr($utf8_str,$i,1); } else if($sbit > 191 && $sbit < 224) { $new_word=iconv("UTF-8","Big5",substr($utf8_str,$i,2)); $big5_str.=($new_word=="")?"ꀢ:$new_word; $i++; } else if($sbit > 223 && $sbit < 240) { $new_word=iconv("UTF-8","Big5",substr($utf8_str,$i,3)); $big5_str.=($new_word=="")?"ꀢ:$new_word; $i+=2; } else if($sbit > 239 && $sbit < 248) { $new_word=iconv("UTF-8","Big5",substr($utf8_str,$i,4)); $big5_str.=($new_word=="")?"ꀢ:$new_word; $i+=3; } } return $big5_str; } 使用方法如下 呼叫utf8_2_big5("裡面帶你要想輸出的字"); 例如: echo $str=utf8_2_big5("大家好~我是韋恩咖啡!!"); -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 123.192.159.178

07/16 02:43, , 1F
這樣不是big5的字還是不會出現啊 只是不會有'?'
07/16 02:43, 1F

07/16 02:44, , 2F
而且切字用mb_substr比較方便吧
07/16 02:44, 2F

07/16 03:36, , 3F
不對 也是有'?' 那就跟直接貼上記事本看到的一樣了
07/16 03:36, 3F

07/16 10:57, , 4F
utf8_2_big5("喆个") ===> 無解
07/16 10:57, 4F
文章代碼(AID): #1ANY7-eP (PHP)
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 2 之 2 篇):
文章代碼(AID): #1ANY7-eP (PHP)