| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1478 人关注过本帖
标题:怎样取一定长度的字符串?
只看楼主 加入收藏
redfree
Rank: 1
等 级:新手上路
帖 子:24
专家分:0
注 册:2006-6-16
收藏
 问题点数:0 回复次数:3 
怎样取一定长度的字符串?
我用了substr()取一定长度的字符串,一个汉字的长度可以用2,取5个汉字的长度就是 substr($str,0,10),但是如果其中有一个字母或数字的时候,就会在后面出现一个? ,这个应该怎样解决啊?
搜索更多相关主题的帖子: 字符 长度 substr 汉字 数字 
2007-06-04 09:06
rainic
Rank: 6Rank: 6
等 级:贵宾
威 望:27
帖 子:2367
专家分:0
注 册:2005-8-9
收藏
得分:0 
用mb_substr

2007-06-04 09:31
yuexiayiyu
Rank: 1
等 级:新手上路
帖 子:152
专家分:0
注 册:2007-1-21
收藏
得分:0 
能举个例子吗?这函数不知道怎么用?

回头→守望过去岁月 →在我们身上刻下了无法抹去的痕迹→在午夜里→ 静静听见→有人说→过去了→过去了
2007-06-04 10:34
lmhllr
Rank: 8Rank: 8
等 级:贵宾
威 望:44
帖 子:1504
专家分:42
注 册:2005-5-12
收藏
得分:0 

晕了,这个函数我在这里不只发了三次了,怎么就不喜欢搜索呢


<?php
function strSplit($s, $len) {
$end = '…';
$result = '';
$strLen = strlen($s);
if ($strLen <= $len) {
return $s;
}
$len -= 2;
for ($i=0; $i<$len && $i<$strLen; $i++) {
$c = $s[$i];
if (ord($c) < 0x80) {
$result .= $c;
} elseif ($i+1<$len) {
$result .= $s[$i++] . $s[$i];
}
}
return ($i < $strLen) ? ($result . $end) : $result;
}

echo strSplit('1234567', 10), '<br />';
echo strSplit('1234567890', 10), '<br />';
echo strSplit('1234中文567890abcdefghijkl', 10), '<br />';
echo strSplit('全部都是中文', 10), '<br />';
echo strSplit('全a部b都c是d中e文', 10), '<br />';
?>

2007-06-04 11:13
快速回复:怎样取一定长度的字符串?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.010985 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved