国产片侵犯亲女视频播放_亚洲精品二区_在线免费国产视频_欧美精品一区二区三区在线_少妇久久久_在线观看av不卡

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - PHP教程 - php中截取中文字符串的代碼小結

php中截取中文字符串的代碼小結

2019-12-06 13:43PHP教程網 PHP教程

眾所周知php原生函數substr是不支持截取中文字符串的。下面的代碼提供了多種截取php中文字符串的方法。

字符串截取是一個非常常見的編程任務,而往往帶中文的字符串截取會經常用到。雖然不難,但是自己寫函數實現又耗費時間,這里介紹一個比較好用的字符串截取函數,能夠勝任基本的需求了。 

1. 截取GB2312中文字符串 

復制代碼代碼如下:


< ?php 
//截取中文字符串 
function mysubstr($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; 

?> 


2. 截取utf8編碼的多字節字符串 

復制代碼代碼如下:


< ?php 
//截取utf8字符串 
function utf8Substr($str, $from, $len) 

return preg_replace('#^(?:[\x00-\x7F]|[\xC0-\xFF][\x80-\xBF]+){0,'.$from.'}'. 
'((?:[\x00-\x7F]|[\xC0-\xFF][\x80-\xBF]+){0,'.$len.'}).*#s', 
'$1',$str); 

?> 


3. UTF-8、GB2312都支持的漢字截取函數 

復制代碼代碼如下:


< ?php 
/* 
Utf-8、gb2312都支持的漢字截取函數 
cut_str(字符串, 截取長度, 開始長度, 編碼); 
編碼默認為 utf-8 
開始長度默認為 0 
*/ 
function cut_str($string, $sublen, $start = 0, $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< $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.= "..."; 
return $tmpstr; 


$str = "abcd需要截取的字符串"; 
echo cut_str($str, 8, 0, 'gb2312'); 
?> 


4. BugFree 的字符截取函數 

復制代碼代碼如下:


< ?php 
/** 
* @package BugFree 
* @version $Id: FunctionsMain.inc.php,v 1.32 2005/09/24 11:38:37 wwccss Exp $ 


* Return part of a string(Enhance the function substr()) 

* @author Chunsheng Wang <wwccss@263.net> 
* @param string $String the string to cut. 
* @param int $Length the length of returned string. 
* @param booble $Append whether append "...": false|true 
* @return string the cutted string. 
*/ 
function sysSubStr($String,$Length,$Append = false) 

if (strlen($String) < = $Length ) 

return $String; 

else 

$I = 0; 
while ($I < $Length) 

$StringTMP = substr($String,$I,1); 
if ( ord($StringTMP) >=224 ) 

$StringTMP = substr($String,$I,3); 
$I = $I + 3; 

elseif( ord($StringTMP) >=192 ) 

$StringTMP = substr($String,$I,2); 
$I = $I + 2; 

else 

$I = $I + 1; 

$StringLast[] = $StringTMP; 

$StringLast = implode("",$StringLast); 
if($Append) 

$StringLast .= "..."; 

return $StringLast; 


$String = "17test.info 走在中國自動化測試的前沿"; 
$Length = "18"; 
$Append = false; 
echo sysSubStr($String,$Length,$Append); 
?> 

延伸 · 閱讀

精彩推薦
Weibo Article 1 Weibo Article 2 Weibo Article 3 Weibo Article 4 Weibo Article 5 Weibo Article 6 Weibo Article 7 Weibo Article 8 Weibo Article 9 Weibo Article 10 Weibo Article 11 Weibo Article 12 Weibo Article 13 Weibo Article 14 Weibo Article 15 Weibo Article 16 Weibo Article 17 Weibo Article 18 Weibo Article 19 Weibo Article 20 Weibo Article 21 Weibo Article 22 Weibo Article 23 Weibo Article 24 Weibo Article 25 Weibo Article 26 Weibo Article 27 Weibo Article 28 Weibo Article 29 Weibo Article 30 Weibo Article 31 Weibo Article 32 Weibo Article 33 Weibo Article 34 Weibo Article 35 Weibo Article 36 Weibo Article 37 Weibo Article 38 Weibo Article 39 Weibo Article 40
主站蜘蛛池模板: 成版人性视频 | 国产区视频 | 国产精品视屏 | 中文字幕,久热精品,视频在线 | 久草中文在线 | 日韩福利电影 | a级黄色在线观看 | 日本视频免费观看 | 成人免费视频观看视频 | 亚洲国产精品yw在线观看 | 亚洲在线视频 | 色爱区综合五月激情 | 亚洲一区视频网站 | 亚洲欧美中文字幕 | 成人高清网站 | 日本中文字幕一区 | 中文视频在线 | 日韩免费视频 | 欧美一区二区三区久久久久久桃花 | 久久av网 | 国产精品久久久久国产精品 | 久久久久亚洲美女啪啪 | 免费观看a视频 | 国产精品黄色 | 亚洲在线视频 | 国产精品久久久久久亚洲调教 | 久一在线| 日韩欧美三区 | 久久久久这里只有精品 | 黄色av免费网站 | 精品久久亚洲 | av成人免费在线观看 | 国产精品成人一区二区三区夜夜夜 | 99久久婷婷国产综合精品草原 | 国产精品成人av | 欧美日韩视频在线观看免费 | 欧美九九九 | 成人午夜毛片 | 成人在线观看网 | 久久久久黑人 | 欧洲一区 |