亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 網站 > 建站經驗 > 正文

php字符串截取,支持中文和其他編碼

2024-04-25 20:36:50
字體:
來源:轉載
供稿:網友

本文章總結了在php函數substr的基礎上來截取字符串的函數,在碰到中文時出現漢字截取一半出現亂碼的解決辦法了,下面介紹了支持中文和其他編碼截取程序.

php代碼如下:

<?php

/**

* 字符串截取,支持中文和其他編碼

*

* @static

* @access public

* @param string $str 需要轉換的字符串

* @param string $start 開始位置

* @param string $length 截取長度

* @param string $charset 編碼格式

* @param string $suffix 截斷顯示字符

* @return string

*/

function msubstr($str, $start=0, $length, $charset="utf-8", $suffix=true)

{

if(function_exists("mb_substr"))

mb_substr($str, $start, $length, $charset);

elseif(function_exists('iconv_substr')) {

iconv_substr($str,$start,$length,$charset);

}

$re['utf-8'] = "/[x01-x7f]|[xc2-xdf][x80-xbf]|[xe0-xef][x80-xbf]{2}|[xf0-xff][x80-xbf]{3}/";

$re['gb2312'] = "/[x01-x7f]|[xb0-xf7][xa0-xfe]/";

$re['gbk'] = "/[x01-x7f]|[x81-xfe][x40-xfe]/";

$re['big5'] = "/[x01-x7f]|[x81-xfe]([x40-x7e]|xa1-xfe])/";

preg_match_all($re[$charset], $str, $match);

$slice = join("",array_slice($match[0], $start, $length));

if($suffix) return $slice."…";

return $slice;

}

?>

如果我們直接使用了php substr來截取數據如在英文和漢字混合的情況下會出現如下問題,如果有這樣一個字符串:

$str="這是一個字符串";

為了截取該串的前10個字符,使用:

if(strlen($str)>10) $str=substr($str,10)."…";

那么,echo $str的輸出應該是"這是一個字…"

假設: $str="這是1個字符串";這個串中包含了一個半角字符,同樣執行:

if(strlen($str)>10) $str=substr($str,10);

由于原字符串$str的第10、11個字符構成了漢字“符”;執行串分割后會將該漢字一分為二,這樣被截取的串就會發現亂碼現象,使用了上面這代碼字符截取代碼就可以方便的解決了這種問題了.

今天找到一個比較好的截取中文字符串方法,在此與大家共享,代碼如下:

function msubstr($str, $start, $len) {

$tmpstr = "";

$strlen = $start + $len;

for($i = 0; $i < $strlen; $i++) {

if(ord(substr($str, $i, 1)) > 0xa0) {

$tmpstr .= substr($str, $i, 2);

$i++;

} else

$tmpstr .= substr($str, $i, 1);

}

return $tmpstr;

}

程序二:PHP截取UTF-8字符串,解決半字符問題.

/******************************************************************

* PHP截取UTF-8字符串,解決半字符問題。

* 英文、數字(半角)為1字節(8位),中文(全角)為3字節

* @return 取出的字符串, 當$len小于等于0時, 會返回整個字符串

* @param $str 源字符串

* $len 左邊的子串的長度

****************************************************************/

function utf_substr($str,$len)

{

for($i=0;$i<$len;$i++)

{

$temp_str=substr($str,0,1);

if(ord($temp_str) > 127)

{

$i++;

if($i<$len)

{

$new_str[]=substr($str,0,3);

$str=substr($str,3);

}//開源代碼phpfensi.com

}

else

{

$new_str[]=substr($str,0,1);

$str=substr($str,1);

}

}

return join($new_str);

}

 

 

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
国产精品久久一区主播| 91精品国产色综合| 国产美女搞久久| 高清欧美性猛交xxxx| 国产精品一区二区av影院萌芽| 国产精品一区二区电影| 欧美日韩亚洲高清| 欧美福利小视频| 色婷婷成人综合| 久久久久久久999精品视频| 中国人与牲禽动交精品| 色一区av在线| 色婷婷综合久久久久| 日韩电影中文 亚洲精品乱码| 国产免费一区二区三区香蕉精| 亚洲国产精品大全| 日韩一级裸体免费视频| 欧美性高潮在线| 揄拍成人国产精品视频| 国内精品久久久久影院优| 日韩精品免费在线播放| 欧美激情免费观看| 91午夜在线播放| 欧美日韩在线另类| 欧美天天综合色影久久精品| 亚洲一区二区在线播放| 91禁国产网站| 精品久久久久久电影| 久久夜色精品亚洲噜噜国产mv| 久久精品亚洲国产| 欧美巨乳美女视频| 色青青草原桃花久久综合| 国产精品久久久久久久久久ktv| 色诱女教师一区二区三区| 国产婷婷成人久久av免费高清| 最新日韩中文字幕| 亚洲精品中文字幕av| 久久久久中文字幕| 亚洲激情中文字幕| 久久人人爽人人爽人人片亚洲| 欧美黄网免费在线观看| 色与欲影视天天看综合网| 亚洲全黄一级网站| 中文在线不卡视频| 亚洲国产成人av在线| 久久6精品影院| 欧美日韩加勒比精品一区| 中文字幕欧美日韩va免费视频| 国产精品久久久久久av福利| 成人福利视频网| 欧美另类69精品久久久久9999| 欧美天堂在线观看| 久久久久久九九九| 亚洲第一视频网站| 91高清在线免费观看| 中文日韩电影网站| 日本精品久久久久影院| 国产综合久久久久| 欧美大人香蕉在线| 日韩av成人在线| 国产精品久久久久久超碰| 欧美日韩在线第一页| 亚洲人成网站免费播放| 精品色蜜蜜精品视频在线观看| 成人性生交大片免费观看嘿嘿视频| 国产亚洲欧美日韩一区二区| 538国产精品一区二区免费视频| 国内揄拍国内精品| 国产精品久久久久久久app| 国产欧洲精品视频| 亚洲成人精品av| 久久久亚洲福利精品午夜| 亚洲二区中文字幕| 性欧美亚洲xxxx乳在线观看| 亚洲毛片在线观看.| 国产热re99久久6国产精品| 欧美亚洲成人免费| 成人免费高清完整版在线观看| 久久精品影视伊人网| 国产99久久精品一区二区 夜夜躁日日躁| 精品国产电影一区| 日韩在线视频网站| 91免费精品国偷自产在线| 久久综合久中文字幕青草| 欧美精品久久久久久久免费观看| 欧洲成人免费视频| 北条麻妃99精品青青久久| 91免费人成网站在线观看18| 色婷婷综合成人| 国产精品久久久久久久久粉嫩av| 欧美在线免费视频| 欧美一级视频在线观看| 亚洲电影成人av99爱色| 奇米4444一区二区三区| 国产欧美日韩高清| 91久久精品国产91性色| 中文字幕日韩视频| 欧美黑人狂野猛交老妇| 亚洲一区二区久久久久久久| 久久久女人电视剧免费播放下载| 亚洲欧美国产精品久久久久久久| 欧美成人一区二区三区电影| 国产亚洲欧美日韩美女| 欧美日韩午夜激情| 国产精品视频专区| 色视频www在线播放国产成人| 色先锋久久影院av| 久久精品电影网| 国产成人精品久久二区二区| 97成人超碰免| 亚洲精品午夜精品| 欧美电影在线观看高清| 2020欧美日韩在线视频| 欧美片一区二区三区| 色综合伊人色综合网| 97av在线影院| 中文字幕精品国产| 久久久久久国产精品久久| 国内精品模特av私拍在线观看| 亚洲摸下面视频| 中文字幕亚洲图片| 中文字幕日韩欧美在线| 国产亚洲视频中文字幕视频| 国产一区二区三区在线观看视频| 91老司机精品视频| 久久影视电视剧免费网站| 亚洲a中文字幕| 亚洲国产私拍精品国模在线观看| 日韩欧美国产中文字幕| 成人久久一区二区| 成人黄色在线观看| 51午夜精品视频| 国产日产欧美精品| 久久综合五月天| 国产日韩精品入口| 国产精品久久久久免费a∨大胸| www.亚洲成人| 国产精品一区二区三区免费视频| 亚洲美女又黄又爽在线观看| 亚洲女同精品视频| 一区二区三区四区在线观看视频| 日本一本a高清免费不卡| 2018日韩中文字幕| 国产99久久精品一区二区| 亚洲精品电影在线观看| 欧美成人亚洲成人日韩成人| 日韩在线视频一区| 亚洲高清福利视频| 成人免费直播live| 秋霞av国产精品一区| 久久久精品一区| 91九色国产社区在线观看| 国产精品444| 91最新在线免费观看| 国产精品福利观看| 91国产视频在线播放| 欧美在线日韩在线| 亚洲色图国产精品| 日本人成精品视频在线| 日韩资源在线观看| 日韩高清av在线| 一区二区三区四区视频| 亚洲一区av在线播放| 欧美一级片一区|