社区
Framework
帖子详情
[求助] ThinkPHP截取字符串
hxprince
2009-12-05 01:20:17
截取字符串 怎么不显示 省略号啊???
{$vo.title|msubstr=0,8,'UTF-8',true}
能截取 但是不显示省略号,怎么回事哦??谢谢哦。
...全文
968
4
打赏
收藏
[求助] ThinkPHP截取字符串
截取字符串 怎么不显示 省略号啊??? {$vo.title|msubstr=0,8,'UTF-8',true} 能截取 但是不显示省略号,怎么回事哦??谢谢哦。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
4 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
xiaohei_ning
2010-08-15
打赏
举报
回复
截取字符串 怎么不显示 省略号啊???
{$vo.title|msubstr=0,8,'UTF-8',true}
{$vo.title|msubstr=0,8,'UTF-8',false}是不显示。
xuzuning
2009-12-07
打赏
举报
回复
从msubstr函数的定义上看,就不支持你需要的功能
/**
+----------------------------------------------------------
* 字符串截取,支持中文和其他编码
+----------------------------------------------------------
* @static
* @access public
+----------------------------------------------------------
* @param string $str 需要转换的字符串
* @param string $start 开始位置
* @param string $length 截取长度
* @param string $charset 编码格式
* @param string $suffix 截断显示字符
+----------------------------------------------------------
* @return string
+----------------------------------------------------------
*/
function msubstr($str, $start=0, $length, $charset="utf-8", $suffix=true)
{
if(function_exists("mb_substr"))
return mb_substr($str, $start, $length, $charset);
elseif(function_exists('iconv_substr')) {
return iconv_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;
}
ruanchao
2009-12-06
打赏
举报
回复
[Quote=引用楼主 hxprince 的回复:]
截取字符串 怎么不显示 省略号啊???
{$vo.title|msubstr=0,8,'UTF-8',true}
能截取 但是不显示省略号,怎么回事哦??谢谢哦。
[/Quote]
举个例子说一下,说清楚一些
lvhong84
2009-12-06
打赏
举报
回复
不显示省略号你自己在后面输出个省略号不就行了
Thinkphp
模板中
截取字符串
函数使用实例
本文详细介绍了在
ThinkPHP
模板中如何使用PHP函数
截取字符串
,包括英文字符和中文字符的截取方法及具体用法。
thinkphp
模板截取中文字符串函数
本文介绍了一种在
ThinkPHP
框架中实现中文字符串截取的方法,并提供了一个实用的函数,该函数可以方便地用于新闻列表等场景以生成简介。
Thinkphp
模板中
截取字符串
本文介绍
ThinkPHP
框架中用于
截取字符串
的msubstr函数的使用方法及参数说明,包括如何处理不同字符编码下的中文字符截取,并提供了一个具体的函数实现示例。
thinkphp
中
截取字符串
(支持中文)
在
ThinkPHP
框架中,内置的字符串截取方法可能存在不足,如截取长度不足时仍会显示省略号。本文提供了一个自定义的msubstr函数,解决了这一问题。将此函数放入common.php文件后,可以像使用原生msubstr一样在模板中调用,实现精确的中文字符串截取。
thinkphp
截取字符串
函数
本文介绍了
ThinkPHP
框架中的自定义字符串截取函数msubstr,用于处理多字符集编码下的字符串截取问题。通过在
ThinkPHP
的Common/functions.php文件中添加msubstr函数代码,可以实现根据指定起始位置、长度和字符集进行截取,并可选择是否在结尾添加省略号。
Framework
4,250
社区成员
4,522
社区内容
发帖
与我相关
我的任务
Framework
国内外优秀PHP框架讨论学习
复制链接
扫一扫
分享
社区描述
国内外优秀PHP框架讨论学习
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章