PHP - 中英文混排字符串截取函数-问答-阿里云开发者社区-阿里云

开发者社区> 问答> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

PHP - 中英文混排字符串截取函数

2016-06-08 17:10:43 3204 1

求一个中英文混排字符串截取的函数,substr(), mb_substr(), iconv_substr()貌似都不太给力的说,网上放出来的自定义函数也试过一些,没有好用的.= =!
其实我的主要目的是想截出来的几行字的长度是一模一样的,所以求教一下~

下面是我测试用的代码,貌似第一个和第二个答案得出的都有乱码的问题的说~
PS:回答问题的可以先用我的那段测试小文本测试一下,通过了再提交答案的说~

<?php
$one = '20';
$text = 'Nokia阿根廷部门开发了Angry Birds和Fruit Ninja书签工具,通过此书签玩家就可以在任何网站裡开启Angry Birds和Fruit Ninja畅玩,而且你发射的小鸟会破坏网页架构,你切水果的手势也会顺便把网站大卸八块。';
$count= mb_strlen($text);
$row = ($count - $count%$one)/$one;
if($count%$one != 0) {
$row = $row+1;    
}
for($i=0;$i< $row;$i++) {
echo mb_strimwidth($text, $i*$one, $one);
echo '<br />';
PHP
取消 提交回答
全部回答(1)
  • 小旋风柴进
    2019-07-17 19:32:22

    我用了一个比较恶心的方案。假设你的字符串是utf-8编码,那么需要转成gbk

    $gbk_str = iconv('UTF-8', 'GBK', $raw);
    然后substr去截这个$gbk_str,gbk编码的汉字是两个字节,英文是一个,所以刚好。

    0 0
相关问答

1

回答

开启php函数

2018-06-14 18:00:29 430浏览量 回答数 1

1

回答

怎样开启php的sleep函数

2018-01-30 22:20:38 684浏览量 回答数 1

1

回答

虚似空间有开启php函数openssl

2016-05-11 16:43:10 1797浏览量 回答数 1

1

回答

如何开启22端口?或者开启php中popen函数!!!

2016-03-18 14:57:05 6080浏览量 回答数 1

1

回答

PHP连接mysql出现问题

2020-05-23 21:00:25 680浏览量 回答数 1

2

回答

网站测试mysql.php,输入账号密码数据库信息后,显示错误111

2016-10-10 20:14:47 2795浏览量 回答数 2

1

回答

php+mysql数据查询技巧

2016-07-04 14:23:39 1513浏览量 回答数 1

1

回答

php连接mysql识别不到端口号

2016-02-08 13:53:19 2572浏览量 回答数 1

1

回答

php 连接mysql问题

2016-02-08 14:13:14 2012浏览量 回答数 1

2

回答

求问php连接mysql

2014-02-19 22:04:57 8428浏览量 回答数 2
2709
文章
6591
问答
问答排行榜
最热
最新
相关电子书
更多
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载
冬季实战营第三期:MySQL数据库进阶实战
立即下载