php字符串截取(兼容中英文混截)
PHP 字符串 兼容 截取 中英文
2023-06-13 09:15:37 时间
封装的函数
//兼容中英文混排的字符串截取
function common_substr($sourcestr, $cutlength) {
$returnstr = '';
$i = 0;
$n = 0;
$str_length = strlen ( $sourcestr ); //字符串的字节数
while ( ($n < $cutlength) and ($i <= $str_length) ) {
$temp_str = substr ( $sourcestr, $i, 1 );
$ascnum = ord ( $temp_str ); //得到字符串中第$i位字符的ascii码
if ($ascnum >= 224) {//如果ascii位高与224,
if($n+3>$cutlength){
return $returnstr;
}
$returnstr = $returnstr . substr ( $sourcestr, $i, 3 ); //根据utf-8编码规范,将3个连续的字符计为单个字符
$i = $i + 3; //实际byte计为3
$n +=3;
//echo $n."\n";
} elseif ($ascnum >= 192){ //如果ascii位高与192,
if( $n+2>$cutlength){
return $returnstr;
}
$returnstr = $returnstr . substr ( $sourcestr, $i, 2 ); //根据utf-8编码规范,将2个连续的字符计为单个字符
$i = $i + 2; //实际byte计为2
$n +=2;
} elseif ($ascnum >= 65 && $ascnum <= 90) {//如果是大写字母,
$returnstr = $returnstr . substr ( $sourcestr, $i, 1 );
$i = $i + 1; //实际的byte数仍计1个
$n ++; //但考虑整体美观,大写字母计成一个高位字符
}elseif ($ascnum >= 97 && $ascnum <= 122) {
$returnstr = $returnstr . substr ( $sourcestr, $i, 1 );
$i = $i + 1; //实际的byte数仍计1个
$n ++; //但考虑整体美观,大写字母计成一个高位字符
} else {//其他情况下,半角标点符号,
$returnstr = $returnstr . substr ( $sourcestr, $i, 1 );
$i = $i + 1;
$n = $n + 1;
}
}
return $returnstr;
}
经测试效果还行
未经允许不得转载:肥猫博客 » php字符串截取(兼容中英文混截)
相关文章
- php替换字符串中,PHP 替换字符串中的一些字符方法介绍
- php 字符串替换中文,PHP中文字符串替换其中为*的方法
- php连接ldap服务器,使用PHP连接LDAP服务器[通俗易懂]
- PHP之与或非_php字符串运算符
- PHP获取新浪微博token
- [PHP] 超全局变量$_FILES上传文件详解编程语言
- 如何在Linux中配置PHP(linux怎么配置php)
- 基于MySQL的PHP留言板系统开发(php留言板mysql)
- php imagick rotate 保持透明度的方法详解编程语言
- PHP腾讯地图地图接口调用提示{ “status”: 110, “message”: “请求来源未被授权,此次请求无来源信息” }详解编程语言
- 数据库远程连接MySQL数据库:利用PHP实现简易方法(php远程mysql)
- 的数据库连接PHP与Oracle数据库的连接技术指南(php与oracle)
- Linux服务器性能监控利器:PHP实现(linuxphp监控)
- PHP使用Redis扩展连接Redis服务(php开启redis)
- PHP与MSSQl的兼容性探索(php mssql 兼容)
- PHP和MSSQL实现完美兼容:简单实用又稳定(php mssql兼容性)
- 文件Linux 下如何快速删除PHP文件(linux 删除php)
- MySQL和PHP中的目录结构说明(mysql中php的目录)
- PHP与MySQL实现三表关联操作(mysql三表关联pHP)
- 在PHP中使用Redis提高网站性能(在php中使用redis)
- PHP中的CMS的涵义
- php下过滤html代码的函数提高程序安全性
- 《PHP编程最快明白》第三讲:php数组
- CI框架源码阅读,系统常量文件constants.php的配置
- Window下PHP三种运行方式图文详解
- php使用正则表达式提取字符串中尖括号、小括号、中括号、大括号中的字符串
- php常用字符串处理函数实例分析
- PHP采集静态页面并把页面css,img,js保存的方法
- php+mysql删除指定编号员工信息的方法