`
myfreespace
  • 浏览: 228596 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

php 截取中文字符

PHP 
阅读更多

<?php
/*
*截取字符串
*bilibo@2011-06-23
*/

class StringHelper extends AppHelper {
	
	function CutStr($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 )
     
     return $tmpstr;
     
     }
  
  }
}
?>
 
0
0
分享到:
评论

相关推荐

    PHP中如何截取中文字符串

    在PHP中处理中文字符串截取是一项常见的任务,尤其是在网页开发中。中文字符串通常包含UTF-8编码的字符,这与ASCII编码的英文字符串处理方式有所不同。以下将详细讲解如何在PHP中正确截取中文字符串。 首先,我们...

    php截取指定字符串之间的字符串的类.zip

    一个php截取指定字符串之间的字符串的类,介绍一个php截取指定字符串之间的字符串的类,需要的朋友可以自行下载学习使用。

    php截取中文字符串不乱码的方法

    PHP 提供了多种方式来处理这种情况,以确保截取的中文字符串不会出现乱码。本篇文章将详细探讨如何在 PHP 中使用 `mb_substr` 函数来正确截取包含中文字符的字符串,并确保它们的可读性。 `mb_substr` 是 PHP 中的...

    PHP截取中文字符串的问题

    解决方法是根据值是否大于等于128来判断是否是双字节字符,以避免出现乱码的情况。但中英文混合、特殊符号等问题总是存在,现在写一个比较全面的。

    一个php截取指定字符串之间的字符串的类

    这个名为“一个php截取指定字符串之间的字符串的类”的资源提供了一个专门用于在字符串中截取特定部分的类。此类可以帮助开发者更加灵活和高效地操作字符串,尤其是在处理HTML、XML或者其他结构化数据时。 字符串...

    php不破坏单词截取子字符串类.zip

    在PHP编程中,有时我们需要对字符串进行截取操作,但为了保持文本的可读性,我们希望这种截取不会在单词中间切断。这样的需求在处理文章摘要、标题或者任何需要保持语义完整的文本时尤为关键。"php不破坏单词截取子...

    一个php截取指定字符串之间的字符串的类.zip

    - `substr()`: 截取字符串的一部分,基于提供的开始位置和长度。 - `strstr()`: 返回字符串首次出现某个子串后的部分。 - `str_replace()`: 替换字符串中的一部分。 - `preg_match()`: 使用正则表达式进行匹配。...

    php不破坏单词截取子字符串类

    在PHP编程语言中,处理字符串是一项常见的任务,其中包括截取字符串。然而,普通的截取方法如`substr()`可能在处理英文文本时导致单词被割裂,影响可读性。为了解决这个问题,我们可以使用特定的类或函数来实现“不...

    php截取汉字类

    ### PHP截取汉字类知识点详解 #### 一、概述 在Web开发中,尤其是中文网站的开发过程中,经常需要对中文字符串进行截取处理。PHP作为一种常用的服务器端脚本语言,提供了多种方法来处理字符串,包括对中文字符的...

    php通用截取字符串.zip

    "php通用截取字符串"这个主题主要涉及如何在PHP中对字符串进行截取,以便获取我们感兴趣的特定部分。这通常用于显示预览、处理用户输入或者从长文本中提取关键信息。在PHP中,有多种方法可以实现字符串截取,下面...

    字符串按照指定的字节数来截取

    在Python中,可以使用内置的`[start:end]`切片操作来截取字符串。如果要考虑字节,我们需要使用`encode()`方法将字符串转化为字节串,因为Python的切片默认是基于字符的。例如: ```python s = "你好,世界" byte_s...

    PHP 不区分中英文截取utf8字符串

    这段代码会正确地截取字符串,即使其中包含了中文和英文字符。 然而,有时候我们可能需要根据字节数而不是字符数来截取,例如限制输出的字节数。这时,我们需要计算每个字符的字节数,并相应调整`start`和`length`...

    PHP按符号截取字符串的指定部分的实现方法

    字符串截取在php开发中是比较常用的; 而且对于截取的需求也有很多种; 有时我们想截取最后一个斜杠’/’后面的数字; 有时我们又需要截取第一个斜杠’/’前面的内容判断用户输入的url链接带不带http://等等; 字符...

    substring截取字符串 字符串截取方法

    Substring截取字符串字符串截取方法 Substring截取字符串字符串截取方法是计算机编程中一种常见的操作,它指的是从字符串中提取某一段子字符串,在不同的编程语言中有不同的实现方式。下面将介绍Substring截取字符...

    php 截取包含中文的字符串

    php 截取包含中文的字符串

    PHP截取字符串,生成文章摘要

    在PHP中,截取字符串并生成文章摘要是常见的任务,特别是在构建内容管理系统或者博客平台时。这个过程涉及到字符串处理和文本分析技术。下面我们将详细探讨如何使用PHP来实现这一功能。 首先,PHP提供了多种内置...

    php截取字符串

    本篇将围绕“PHP截取字符串”这一主题,深入探讨相关的知识点。 首先,我们需要了解PHP中最常用的字符串截取函数——`substr()`。`substr()`函数允许我们从字符串的指定位置开始,截取指定长度的字符。其基本语法...

    php 截取字符串

    这篇博客将深入探讨PHP如何截取字符串,并通过实例来演示其具体用法。 标题中的“php 截取字符串”主要涉及PHP中的两个核心函数:`substr()` 和 `mb_substr()`。`substr()` 是PHP中用于截取字符串的基本函数,而`mb...

    php截取中文字符串函数实例

    考虑到中文字符在UTF-8编码下通常占用3个字节,在GB2312编码下占用2个字节,我们必须在截取字符串时处理好这些编码问题。 首先,让我们来看看如何正确截取UTF-8编码的中文字符串。在UTF-8编码中,英文字符和一些...

Global site tag (gtag.js) - Google Analytics