GVKun编程网logo

thinkPHP内置字符串截取函数用法详解(thinkphp 截取字符串)

18

在本文中,您将会了解到关于thinkPHP内置字符串截取函数用法详解的新资讯,同时我们还将为您解释thinkphp截取字符串的相关在本文中,我们将带你探索thinkPHP内置字符串截取函数用法详解的奥

在本文中,您将会了解到关于thinkPHP内置字符串截取函数用法详解的新资讯,同时我们还将为您解释thinkphp 截取字符串的相关在本文中,我们将带你探索thinkPHP内置字符串截取函数用法详解的奥秘,分析thinkphp 截取字符串的特点,并给出一些关于Delphi 字符串截取函数、MySQL字符串截取函数用法介绍、php 中文字符串截取函数、php 字符串截取函数的实用技巧。

本文目录一览:

thinkPHP内置字符串截取函数用法详解(thinkphp 截取字符串)

thinkPHP内置字符串截取函数用法详解(thinkphp 截取字符串)

本文实例讲述了thinkPHP内置字符串截取函数用法。分享给大家供大家参考,具体如下:

thinkPHP内置了一个可以媲美smarty的模板引擎,给我们带来了很大的方便。调用函数也一样,可以和smarty一样调用自己需要的函数,而官方也内置了一些常用的函数供大家调用。

比如今天我们说的截取字符串函数,在thinkPHP模板引擎里可以这样写:{$vo.title|msubstr=0,5,'utf-8′,false} 至于{$vo.title}这个大家肯定不陌生了。就说说后边的函数msubstr吧。它代表的意思是截取字符串$vo.title,从0个字符开始截取,截取5个字符。使用的是utf-8编码,默认截取后不显示省略号,如果要显示省略号,直接把false改成true就可以啦。

函数解释:

rush:PHP;"> msubstr($str,$start=0,$length,$charset="utf-8",$suffix=true)

参数功能:

截取的字符串 $start=0:开始位置,默认从0开始 $length:截取长度 $charset="utf-8":字符编码,默认UTF-8 $suffix=true:是否在截取后的字符后面显示省略号,默认true显示,false为不显示

ps:

如果不能正常调用,那说明你没有加载函数库,可以使用 Load('extend');来加载函数,把它放到action中就可以啦~!

经试用:官方的msubstr函数好像无论如何也加不上省略号,官网论坛上找了一个修改方法,经测试可以正常使用~!

修改Common\extend.PHP文件的msubstr函数为如下代码即可:

rush:PHP;"> function msubstr($str,$suffix=true) { if(function_exists("mb_substr")){ if($suffix) return mb_substr($str,$start,$charset)."..."; else return mb_substr($str,$charset); } elseif(function_exists('iconv_substr')) { if($suffix) return iconv_substr($str,$charset)."..."; else return iconv_substr($str,$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],$length)); if($suffix) return $slice."…"; return $slice; }

更多关于thinkPHP相关内容感兴趣的读者可查看本站专题:《》、《》、《》、《》及《PHP模板技术总结》。

希望本文所述对大家基于ThinkPHP框架的PHP程序设计有所帮助。

Delphi 字符串截取函数

Delphi 字符串截取函数

原文地址:http://www.cnblogs.com/shawnloong/archive/2010/11/10/1873752.html

如果要使用LeftStr,RightStr,MidStr必需引用系统单元StrUtils;

声明变量Str:string;

Str:=HelloWorld;

1,LeftStr(Str,2)=He;//从Str字符串变量的最左边(第一个字符包括第一个字符)开始截取2个字符;

2,RightStr(Str,2)=ld;//从Str字符串变量的最右边(第一个字符包括第一个字符)开始截取2个字符;

3,MidStr(Str,2,2)=el;//从Str字符串变量的中第2个字符开始取长度为2个字符的字符串;

另外有一个函数copy

4,copy(Str,2)=el;//从Str字符串变量的中第2个字符开始取长度为2个字符的字符串;(类似于MidStr);

MySQL字符串截取函数用法介绍

MySQL字符串截取函数用法介绍

我们知道在MySQL字符串截取函数有:left(),right(),substring(),substring_index(),还有mid(),substr().其中,mid这些,下面我来给大家说明这些字符截函数的用法。

substr() 等价于substring() 函数,substring()的功能非常强大和灵活。

1、从左开始截取字符串
left(str, length)

说明:left(被截取字段,截取长度)

1、left(str,length);  select left (''hxsdit.com'',3);        结果是hxs

2、right(str,length);
从右开始截取字符串
right(str, length)

说明:right(被截取字段,截取长度)

select right(''hxsdit.com,3 );       结果是com

3、substring(str,pos,length)

截取字符串
substring(str, pos)
substring(str, pos, length)

说明:substring(被截取字段,从第几位开始截取)
substring(被截取字段,从第几位开始截取,截取长度)

    select substring(''hxsdit.com'',4)从字符串str第四个字符位置开始截取,直到结束,  结果为dit.com
    select substring(''hxsdit.com'',4,2) 从字符串str第四个字符位置开始截取,截取2个.  结果为di
    select substring(''hxsdit.com''-4)从字符串str倒数第四个开始截取,直到结束。      结果为.com
    select  substring(''hxsdit.com''-4,2)从字符串str倒数第四个开始截取,截取2个     结果为.c
   使用这个函数时候请注意,变量pos可以为负值,但是length不可以为负值

4、substring_index(str,delim,count);

按关键字截取字符串
substring_index(str,delim,count)

说明:substring_index(被截取字段,关键字,关键字出现的次数)

 代码如下 复制代码

select substring_index(''www.baidu.com'',''.'',2);    截取第二个''.''之前的所有字符   结果为 www.baidu
select substring_index(''www.baidu.com'',''.'',-2);  截取倒数第二个''.''之后的所有字符  结果为  com
select substring_index(''www.baidu.com'',''234'',1); 如果在字符串中找不到delim参数指定的值,就返回整个字符串

截取第二个 ''.'' 之前的所有字符。

 代码如下 复制代码
mysql> select substring_index(''www.sqlstudy.com.cn'', ''.'', 2);
+------------------------------------------------+
| substring_index(''www.sqlstudy.com.cn'', ''.'', 2) |
+------------------------------------------------+
| www.sqlstudy                                   |
+------------------------------------------------+

4.2 截取第二个 ''.'' (倒数)之后的所有字符。

 代码如下 复制代码

mysql> select substring_index(''www.sqlstudy.com.cn'', ''.'', -2);
+-------------------------------------------------+
| substring_index(''www.sqlstudy.com.cn'', ''.'', -2) |
+-------------------------------------------------+
| com.cn                                          |
+-------------------------------------------------+


5、如果在字符串中找不到 delim 参数指定的值,就返回整个字符串

 代码如下 复制代码

mysql> select substring_index(''www.sqlstudy.com.cn'', ''.coc'', 1);
+---------------------------------------------------+
| substring_index(''www.sqlstudy.com.cn'', ''.coc'', 1) |
+---------------------------------------------------+
| www.sqlstudy.com.cn                               |
+---------------------------------------------------+

php 中文字符串截取函数

php 中文字符串截取函数

下面这二款函数是二款双字节字符串截取函数,那就是针对中文字符串截取了,好了第一款汉字中文截取函数是越级简洁了,后一款复杂但考虑更多一些。 ? //php教程 中文字符串截取函数 /* 下面这二款函数是二款双字节字符串截取函数,那就是针对中文字符串截取了

下面这二款函数是二款双字节字符串截取函数,那就是针对中文字符串截取了,好了第一款汉字中文截取函数是越级简洁了,后一款复杂但考虑更多一些。


//php教程 中文字符串截取函数
/*
下面这二款函数是二款双字节字符串截取函数,那就是针对中文字符串截取了,好了第一款汉字中文截取函数是越级简洁了,后一款复杂但考虑更多一些。
*/

function substr($str = ”, $offset = 0, $len = 0){     $len || ($len = strlen($str));     preg_match_all(‘/./us’, $str, $result);     return implode(”, array_slice($result[0], $offset, $len)); }

//方法二

if (!function_exists(‘mb_substr’)) {
function mb_substr($str, $start, $len = ”, $encoding="utf-8"){
  $limit = strlen($str);

  for ($s = 0; $start > 0;–$start) {// found the real start
    if ($s >= $limit)
      break;

    if ($str[$s]       ++$s;
    else {
      ++$s; // skip length

      while ($str[$s] >= "x80" && $str[$s]         ++$s;
    }
  }

  if ($len == ”)
    return substr($str, $s);
  else
    for ($e = $s; $len > 0; –$len) {//found the real end
      if ($e >= $limit)
        break;

      if ($str[$e]         ++$e;
      else {
        ++$e;//skip length

        while ($str[$e] >= "x80" && $str[$e]           ++$e;
      }
    }

  return substr($str, $s, $e – $s);
}
}

?>

爱分享 ? php 中文字符串截取函数

php 字符串截取函数

php 字符串截取函数

本文章介绍的是PHP自带的一个截取字符串的函数,只能处理英文,数字的不能截取中文混排的哦,有需要的朋友可以参考,后面的比较好用,第一个主要是给初学者学学用的。 

<?PHP

  //构造字符串

  $str = "ABCDEFGHIJKLMnopQRSTUVWXYZ";

  echo "原字符串:".$str."

";

  //按各种方式进行截取

  $str1 = substr($str,5);

  echo "从第5个字符开始取至最后:".$str1."

";

  $str2 = substr($str,9,4);

  echo "从第9个字符开始取4个字符:".$str2."

";

  $str3 = substr($str,-5);

  echo "取倒数5个字符:".$str3."

";

  $str4 = substr($str,-8,4);

  echo "从倒数第8个字符开始向后取4个字符:".$str4."

";

  $str5 = substr($str,-2);

  echo "从倒数第8个字符开始取到倒数第2个字符为止:".$str5."

";

 ?>

支持中英文混合截取:

/*

------------------------------------------------------

参数:

$str_cut    需要截断的字符串

$length     允许字符串显示的最大长度

程序功能:截取全角和半角(汉字和英文)混合的字符串以避免乱码

------------------------------------------------------

*/

function substr_cut($str_cut,$length)

{

    if (strlen($str_cut) > $length)

    {

        for($i=0; $i < $length; $i++)

        if (ord($str_cut[$i]) > 128)    $i++;

        $str_cut = substr($str_cut,$i)."..";

    }

    return $str_cut;

}

?>

今天关于thinkPHP内置字符串截取函数用法详解thinkphp 截取字符串的讲解已经结束,谢谢您的阅读,如果想了解更多关于Delphi 字符串截取函数、MySQL字符串截取函数用法介绍、php 中文字符串截取函数、php 字符串截取函数的相关知识,请在本站搜索。

本文标签:

上一篇thinkphp的dump函数无输出实例代码(thinkphp dump)

下一篇ThinkPHP简单使用memcache缓存的方法(thinkphp memcache)