php 擷取漢字字串 亂碼解決 支援utf8和gb2312的編碼的漢字
function gb_substr($string, $start ,$sublen, $code = 'UTF-8')
{
if($code == 'UTF-8')
{
$pa = "/[x01-x7f]|[xc2-xdf][x80-xbf]|xe0[xa0-xbf][x80-xbf]|[xe1-xef][x80-xbf][x80-xbf]|xf0[x90-xbf][x80-xbf][x80-xbf]|[xf1-xf7][x80-xbf][x80-xbf][x80-xbf]/";
preg_match_all($pa, $string, $t_string);
if(count($t_string[0]) - $start > $sublen)
return join('', array_slice($t_string[0], $start, $sublen))."...";
return join('', array_slice($t_string[0], $start, $sublen));
}
else
{
$start = $start*2;
$sublen = $sublen*2;
$strlen = strlen($string);
$tmpstr = '';
for($i=0; $i {
if($i>=$start && $i {
if(ord(substr($string, $i, 1))>129)
$tmpstr.= substr($string, $i, 2);
else
$tmpstr.= substr($string, $i, 1);
}
if(ord(substr($string, $i, 1))>129) $i++;
}
if(strlen($tmpstr) return $tmpstr;
}
}
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/750220/viewspace-926202/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- ***PHP各種編碼的漢字字串擷取PHP字串
- php uncode 轉漢字編碼PHP
- 如何擷取指定長度字串區分漢字和字元字串字元
- C# UTF8字串轉漢字C#字串
- Oracle客戶端toad漢字亂碼解決方法Oracle客戶端
- CKfinder CKeditor 上傳圖片 漢字 亂碼 解決方法
- JavaScript 擷取指定長度字串 區分漢字和英文字元JavaScript字串字元
- Java.nio-隨機讀寫解決漢字亂碼問題Java隨機
- codeblocks執行時漢字變亂碼BloC
- PLSQL中漢字顯示亂碼問題SQL
- PHP算式驗證碼和漢字驗證碼的實現方法PHP
- java中文字串漢字轉GBK編碼Java字串
- jbuilder把我jsp頁面的漢字編譯成亂碼....UIJS編譯
- php的漢字轉換: Unicode(UTF8)->GBK (轉)PHPUnicode
- 去除字串中的漢字function字串Function
- servlet request getQueryString 漢字的URI編碼如何轉碼Servlet
- win10系統出現漢字亂碼如何解決Win10
- UNICODE碼轉漢字Unicode
- 獲取漢字串的拼音助記碼字串
- 字元編碼及空白漢字佔位符字元
- php獲取漢字的拼音 拼音首字母PHP
- 獲取字串中的所有漢字字串
- Python 漢字區位碼、字串 相互轉換Python字串
- hibernate從資料庫中取出的漢字是亂碼?資料庫
- PHP 實現字串翻轉(包含中文漢字)的實現PHP字串
- 取漢字全拼的SQL函式SQL函式
- 解決java socket在傳輸漢字時出現截斷導致亂碼的問題Java
- PHP 將數字轉換為漢字PHP
- win10應用程式漢字亂碼怎麼辦_win10開啟應用程式亂碼的解決方法Win10
- php 和 j s 對數字,字母,漢子等特殊字串 取反PHP字串
- PHP中GBK和UTF8亂碼解決方案PHP
- mysql獲取漢字的首字母MySql
- java獲取漢字的首字母Java
- javascript替換字串中的某個漢字JavaScript字串
- 根據常用漢字生成雜亂的句子 --- javaJava
- php字串擷取函式,支援中文擷取PHP字串函式
- PHP字串學習之如何返回漢字或混合字元的長度PHP字串字元
- Linux下的JFreeChart和 漢子驗證碼 中文亂碼問題解決方案Linux