PHP字符截取函数,兼容各类gbk,utf-8编码
在PHP中字符截取函数substr只能截取全英文才不会出现乱码如果里面有中文肯定是无法截取的,下面小编来给大家介绍两个兼容各类gbk,utf-8编码字符串截取函数
例1
function CsubStrPro($str, $start, $length, $charset = "utf-8", $suffix = false) { if (function_exists ( "mb_substr" )) return mb_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; }
例2
function subString_UTF8($str, $start, $lenth) { $len = strlen($str); $r = array(); $n = 0; $m = 0; for($i = 0; $i < $len; $i++) { $x = substr($str, $i, 1); $a = base_convert(ord($x), 10, 2); $a = substr('00000000'.$a, -8); if ($n < $start){ if (substr($a, 0, 1) == 0) { }elseif (substr($a, 0, 3) == 110) { $i += 1; }elseif (substr($a, 0, 4) == 1110) { $i += 2; } $n++; }else{ if (substr($a, 0, 1) == 0) { $r[ ] = substr($str, $i, 1); }elseif (substr($a, 0, 3) == 110) { $r[ ] = substr($str, $i, 2); $i += 1; }elseif (substr($a, 0, 4) == 1110) { $r[ ] = substr($str, $i, 3); $i += 2; }else{ $r[ ] = ''; } if (++$m >= $lenth){ break; } } } return $r; } // End subString_UTF8; }// End String
#由于此函数返回的是一个数组,因此要配合join函数来显示字符串:
#join('',subString_UTF8($str, $start, $lenth));
#在页面显示的时候还可以在此语句后面连一个"..."

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

这篇文章将为大家详细讲解有关PHP返回字符串第一个字符的ASCII值,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。PHP返回字符串第一个字符的ASCII值引言在php中,获取字符串第一个字符的ASCII值是一个常见的操作,涉及到字符串处理和字符编码基础知识。ASCII值用于表示字符在计算机系统中的数字值,对于字符比较、数据传输和存储至关重要。过程获取字符串第一个字符的ASCII值涉及以下步骤:获取字符串:确定要获取ASCII值的字符串。它可以是变量、字符串常量

这篇文章将为大家详细讲解有关PHP返回一个字符串在另一个字符串中开始位置到结束位置的字符串,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。PHP中使用substr()函数从字符串中提取子字符串substr()函数可从字符串中提取指定范围内的字符。其语法如下:substr(string,start,length)其中:string:要从中提取子字符串的原始字符串。start:子字符串开始位置的索引(从0开始)。length(可选):子字符串的长度。如果未指定,则提

了解PHP中的substr()函数用于截取字符串在PHP语言中,substr()函数是一个非常有用的字符串处理函数,它可以用于截取指定位置和长度的字符串片段。substr()函数接受三个参数:待截取的字符串、截取的起始位置和截取的长度。下面我们将详细介绍substr()函数的使用方法,并给出具体的代码示例。substr()函数的基本用法substr()函数的

PHP的preg_match()函数:如何使用正则表达式匹配字符串,需要具体代码示例正则表达式在字符串处理中是非常强大和灵活的工具。在PHP中,使用preg_match()函数可以方便地进行字符串的正则匹配,从而实现各种复杂的模式匹配和替换操作。本文将介绍preg_match()函数的用法,并提供具体的代码示例来帮助读者更好地理解和应用。preg_match

使用PHP函数"substr"获取字符串的子串在PHP编程中,经常会遇到需要获取字符串的部分内容的情况。这时,我们可以使用PHP内置的函数"substr"来实现。本文将介绍如何使用"substr"函数获取字符串的子串,并提供一些代码示例。一、substr函数的基本用法substr函数用于从字符串中获取指定长度的子串。其基本语法如下:substr(

PHPmb_substr函数无效的处理方案在开发PHP应用程序时,经常会用到mb_substr函数来截取字符串。然而,有时候可能会遇到mb_substr函数无效的情况,主要是因为在不同环境中字符编码的问题。为了解决这个问题,我们需要对mb_substr函数进行有效的处理。一种常见的处理方案是通过设置合适的字符编码和截取长度来确保mb_substr函数能

这篇文章将为大家详细讲解有关PHP将字符串的首字母转换为小写,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。将PHP字符串的首字母转换为小写引言在php中,将字符串的首字母转换为小写是一个常见的操作。可以通过使用内置函数lcfirst()或字符串操作符strtolower()来实现。本指南将深入探讨这两种方法,并提供实例代码和最佳实践。方法1:使用lcfirst()函数lcfirst()函数专门用于将字符串的首字母转换为小写,而其余字符保持不变。其语法如下:st

正则表达式是计算机科学中一种强大而灵活的工具,可以进行字符串匹配和替换等操作。在PHP中,我们可以使用preg_match函数来进行正则表达式匹配。preg_match函数的使用格式如下:preg_match($pattern,$subject,$matches);其中,$pattern表示正则表达式模式,也就是我们要匹配的规则;$subject表示要进
