PHP 字符截取 解決中文的截取問(wèn)題,不用mb系列
更新時(shí)間:2009年09月29日 17:39:05 作者:
//字符截取,解決中文的截取問(wèn)題
復(fù)制代碼 代碼如下:
function Cut_string($string, $start ,$sublen, $extstring='...', $code = 'UTF-8') {//Cut_string開(kāi)始
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)).$extstring;
return join('', array_slice($t_string[0], $start, $sublen));
}
else
{
$start = $start*2;
$sublen = $sublen*2;
$strlen = strlen($string);
$tmpstr = '';
for($i=0; $i<$strlen; $i++)
{
if($i>=$start && $i<($start+$sublen))
{
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)<$strlen ) $tmpstr.= $extstring;
return $tmpstr;
}
} //Cut_string結(jié)束
相關(guān)文章
PHP下對(duì)數(shù)組進(jìn)行排序的函數(shù)
如果你已經(jīng)使用了一段時(shí)間PHP的話,那么,你應(yīng)該已經(jīng)對(duì)它的數(shù)組比較熟悉了——這種數(shù)據(jù)結(jié)構(gòu)允許你在單個(gè)變量中存儲(chǔ)多個(gè)值,并且可以把它們作為一個(gè)集合進(jìn)行操作。2010-08-08談?wù)凱HP連接Access數(shù)據(jù)庫(kù)的注意事項(xiàng)
有的時(shí)候需要用php連接access數(shù)據(jù)庫(kù),結(jié)果整了半天Access數(shù)據(jù)庫(kù)就是連接不上,查找很多資料,以下是些個(gè)人經(jīng)驗(yàn),希望能給需要連接access 數(shù)據(jù)的人帶來(lái)幫助。2016-08-08php heredoc和phpwind的模板技術(shù)使用方法小結(jié)
Heredoc技術(shù),在正規(guī)的PHP文檔中和技術(shù)書(shū)籍中一般沒(méi)有詳細(xì)講述,只是提到了這是一種Perl風(fēng)格的字符串輸出技術(shù)。但是現(xiàn)在的一些論壇程序,和部分文章系統(tǒng),都巧妙的使用heredoc技術(shù),來(lái)部分的實(shí)現(xiàn)了界面與代碼的準(zhǔn)分離,phpwind就是一個(gè)典型的例子。2008-03-03php數(shù)組添加與刪除單元的常用函數(shù)實(shí)例分析
這篇文章主要介紹了php數(shù)組添加與刪除單元的常用函數(shù),實(shí)例分析了array_push、array_pop、array_shift及array_unshift等函數(shù)的使用技巧,需要的朋友可以參考下2015-02-02php數(shù)組函數(shù)序列之a(chǎn)rray_unshift() 在數(shù)組開(kāi)頭插入一個(gè)或多個(gè)元素
array_unshift() 函數(shù)在數(shù)組開(kāi)頭插入一個(gè)或多個(gè)元素。被加上的元素作為一個(gè)整體添加,這些元素在數(shù)組中的順序和在參數(shù)中的順序一樣2011-11-11thinkphp框架實(shí)現(xiàn)數(shù)據(jù)添加和顯示功能
這篇文章主要為大家詳細(xì)介紹了thinkphp框架實(shí)現(xiàn)數(shù)據(jù)添加和顯示功能的相關(guān)資料,需要的朋友可以參考下2016-06-06php實(shí)現(xiàn)保存submit內(nèi)容之后禁止刷新
這篇文章主要介紹了php保存submit內(nèi)容之后禁止刷新的具體實(shí)現(xiàn),需要的朋友可以參考下2014-03-03