当前位置:首页 > 开发 > 编程语言 > 编程 > 正文

Yii 截取字符串(UTF-8) 使用组件

发表于: 2013-03-11   作者:dcj3sjt126com   来源:转载   浏览:
yii
摘要: 1.将Helper.php放进protected\components文件夹下。 2.调用方法:   Helper::truncate_utf8_string($content,20,false);   //不显示省略号  Helper::truncate_utf8_string($content,20);  //显示省略号  &n

1.将Helper.php放进protected\components文件夹下。

2.调用方法:

  Helper::truncate_utf8_string($content,20,false);   //不显示省略号
  Helper::truncate_utf8_string($content,20);  //显示省略号 

 

<?php
class Helper extends CController
{
        public static function truncate_utf8_string($string, $length, $etc = '...')
        {
            $result = '';
            $string = html_entity_decode(trim(strip_tags($string)), ENT_QUOTES, 'UTF-8');
            $strlen = strlen($string);
            for ($i = 0; (($i < $strlen) && ($length > 0)); $i++)
                {
                if ($number = strpos(str_pad(decbin(ord(substr($string, $i, 1))), 8, '0', STR_PAD_LEFT), '0'))
                        {
                    if ($length < 1.0)
                                {
                        break;
                    }
                    $result .= substr($string, $i, $number);
                    $length -= 1.0;
                    $i += $number - 1;
                }
                        else
                        {
                    $result .= substr($string, $i, 1);
                    $length -= 0.5;
                }
            }
            $result = htmlspecialchars($result, ENT_QUOTES, 'UTF-8');
            if ($i < $strlen)
                {
                        $result .= $etc;
            }
            return $result;
        }
}

 

Yii 截取字符串(UTF-8) 使用组件

  • 0

    开心

    开心

  • 0

    板砖

    板砖

  • 0

    感动

    感动

  • 0

    有用

    有用

  • 0

    疑问

    疑问

  • 0

    难过

    难过

  • 0

    无聊

    无聊

  • 0

    震惊

    震惊

编辑推荐
在使用帝国标签模板的时候,在需要截取字符串,但是如果设置简介截取字数就会出现前台显示出来html
引自:http://dl.iteye.com/upload/picture/pic/89262/8548ea0c-3d01-35c1-a49f-1166b20eb324.jpg 一
USE [Booking] GO /****** Object: Table [dbo].[Market] Script Date: 04/25/2014 14:18:17 ******
因为中文和英文所占位置不同,一个能显示5个中文的位置应该能显示10个英文, 这个字符串操作函数很
使用JSTL在JSP页面截取字符串 1、使用C标签和fn标签 需要引用的标签库: 截取方法: 2、使用S标签:
截取字符串是很常用的功能,NSString的截取主要有三种方式(下面说的字符串字符下标都是从0开始数)
分隔字符串分三种情况,一种是分隔符是空格,一种是非空格,还有一种是多个字符作为分隔符 先来创建
@echo off set str=123456789 echo 第一个字符为:%str:~0,1% echo 头两个字符为:%str:~0,2% echo
分隔字符串分三种情况,一种是分隔符是空格,一种是非空格,还有一种是多个字符作为分隔符 先来创建
以前看过别人写的,但是实在记不起来是怎么写的了,今天自己写了一个,在这里标记一下 --定义须查询
版权所有 IT知识库 CopyRight © 2009-2015 IT知识库 IT610.com , All Rights Reserved. 京ICP备09083238号