在PHP中有一项非常重要的技术,就是截取指定字符串中指定长度的字符。PHP对于字符串截取可以使用PHP预定义函数substr()函数来实现。下面就来介绍一下substr()函数的语法及其应用。

substr()函数语法格式如下:大理石平台厂家

1

substr(string, start, length);

substr()函数参数说明如下:

参 数 说 明
string 指定字符串对象
start 指定开始截取字符串的位置。如果参数start为负数,则从字符串的末尾开始截取
length 可选参数,指定截取字符的个数,如果length为负数,则表示取到倒数第length个字符

说明:

start的指定位置是从0开始计算的,即字符串中的第一个字符的位置表示为0。

start 为正数据从左向右读取字符

start 为负数时就右向左读取字符

length 默认是直到字符串的结尾,正数 - 在字符串的指定位置开始,负数 - 在从字符串结尾的指定位置开始。

使用substr()函数截取字符串中指定长度的字符,实例的代码如下:

1

2

3

4

5

6

7

8

9

<?php

  echo substr("abcdefg",0);              //从第0个字符开始截取

  echo "<br>";

  echo substr("abcdefg",2,4);             //从第2个字符开始连续截取4个字符

  echo "<br>";

  echo substr("abcdefg",-4,2);             //从倒数第4个字符开始截取2个字符

  echo "<br>";

  echo substr("abcdefg",0,-4);             //从第0个字符开始截取,截取到倒数第4个字符

?>

输出结果为:

1

2

3

4

abcdefg

cdef

de

abc

在开发一些web程序时,为了保持整个页面的合理布局,经常需要对于一些超长的文本,只要求显示其中的部分信息。下面来通过具体的实例讲解一下其实现的方法。

使用substr()函数截取超长文本的部分字符串信息,剩余的部分使用"....."来代替,示例代码如下:

1

2

3

4

5

6

7

8

<?php

   $str="沪深证券交易所已发布“高送转”信息披露指引,实施“刨根问底”问询,开展对“高送转”内幕交易核查联动,集中查办了一批借“高送转”之名从事内幕交易或信息披露违规案件。";

  if(strlen($str)>30){                    //如果文本的字符串长度大于30

      echo substr($str,0,30). "....";          //输出文本的前30个字节,然后输出省略号

      }else{                           

        echo $str;                   // 如果文本的字符串长度小于30,直接输出原文本

 }

?>

输出结果为:

1

沪深证券交易所已发布....

说明:从指定的字符串中按照指定的位置截取一定长度的字符。通过substr()函数可以获取某个固定格式字符串中的一部分。

注意: 使用substr()函数在截取字符串时,如果截取的字符串个数是奇数,那么就会导致截取的中文字符串出现乱码,所以substr()函数适用于对英文字符串的截取,如果想要对中文字符串进行截取,而且要避免出现乱码,最好的方法就是应用substr()函数编写一个自定义函数。

以上就是PHP截取字符串函数substr()函数实例用法详解的详细内容

PHP截取字符串函数substr()函数实例用法详解的更多相关文章

  1. js replace 与replaceall实例用法详解

    这篇文章介绍了js replace 与replaceall实例用法详解,有需要的朋友可以参考一下stringObj.replace(rgExp, replaceText) 参数 stringObj 必 ...

  2. Python 字符串、列表和元组用法详解

    1.通用函数 len() #列表的元素个数.字符串的长度 2.''' '''与'\ '用法详解 s='''this is a text ''' -->输出s ---> 'this\nis\ ...

  3. SQL Server 中截取字符串常用的函数

    SQL Server 中截取字符串常用的函数: 1.LEFT ( character_expression , integer_expression ) 函数说明:LEFT ( '源字符串' , '要 ...

  4. SQL中CONVERT()函数用法详解

    SQL中CONVERT函数格式: CONVERT(data_type,expression[,style]) 参数说明: expression 是任何有效的 Microsoft® SQL Server ...

  5. eval()函数用法详解

    eval()函数用法详解:此函数可能使用的频率并不是太高,但是在某些情况下具有很大的作用,下面就介绍一下eval()函数的用法.语法结构: eval(str) 此函数可以接受一个字符串str作为参数, ...

  6. 转载 LayoutInflater的inflate函数用法详解

    http://www.open-open.com/lib/view/open1328837587484.html LayoutInflater的inflate函数用法详解 LayoutInflater ...

  7. C语言对文件的操作函数用法详解2

    fopen(打开文件) 相关函数 open,fclose 表头文件 #include<stdio.h> 定义函数 FILE * fopen(const char * path,const  ...

  8. C语言对文件的操作函数用法详解1

    在ANSIC中,对文件的操作分为两种方式,即: 流式文件操作 I/O文件操作 一.流式文件操作 这种方式的文件操作有一个重要的结构FILE,FILE在stdio.h中定义如下: typedef str ...

  9. WordPress函数:get_bloginfo()用法详解

    描述 返回你博客的信息,这些信息可以用在任何地方的 PHP 代码中.这个函数,和 bloginfo() 一样,可以用来在模板文件的任何地方显示你博客的信息. 用法 <?php $bloginfo ...

随机推荐

  1. sublime text 疑难解决

    sublime text 白色边框方框解决方法 https://blog.csdn.net/weixin_43228019/article/details/82766316 Sublime Text提 ...

  2. Stack实现

    栈的三种操作算法很简单 STACK-EMPTY(S) 1 if S.top == 0 2    return TRUE 3 else return FALSE PUSH(S, x) 1 S.top = ...

  3. 实现动态WEB内容

    在 system1 上配置提供动态web内容,要求: 1.动态内容由名为 wsgi.group8.example.com 的虚拟主机提供 2.虚拟主机侦听在端口 8909 3.从 http://ser ...

  4. JZOJ5833 永恒

    题目大意 给你一个树,每个节点上有有一个部落,以及部落的人数,要你求出每个节点的子树里面人数最多的部落是哪一个(人数相同部落编号最小的). 思路 全网第一篇分治题解 考虑树的dfs序,然后分治处理,每 ...

  5. C#关键字:访问修饰符

    一.访问修饰符 访问修饰符有public.private.protected.internal和protected internal.它们是修饰在类型(类.接口.委托.结构和枚举)和类型成员(字段.属 ...

  6. Python进阶----线程基础,开启线程的方式(类和函数),线程VS进程,线程的方法,守护线程,详解互斥锁,递归锁,信号量

    Python进阶----线程基础,开启线程的方式(类和函数),线程VS进程,线程的方法,守护线程,详解互斥锁,递归锁,信号量 一丶线程的理论知识 什么是线程:    1.线程是一堆指令,是操作系统调度 ...

  7. 【JVM】记录一次线上SWAP偏高告警的故障分析过程

    近期遇到一个堆外内存导致swap飙高的问题,这类问题比较罕见,因此将整个排查过程记录下来了 现象描述 最近1周线上服务器时不时出现swap报警(swap超过内存10%时触发报警,内存是4G,因此swa ...

  8. pandas-01 Series()的几种创建方法

    pandas-01 Series()的几种创建方法 pandas.Series()的几种创建方法. import numpy as np import pandas as pd # 使用一个列表生成一 ...

  9. node.js数据库操作

    node 中使用mysql const http = require('http'); const mysql = require('mysql'); const url = require('url ...

  10. 【GLG Toolkit 行业案例】Baltic Information Systems, Ltd.公司选择使用GLG Toolkit

    BIS (Baltic Information Systems, Ltd.)是一家专门为核电厂开发安全和过程监控系统的软件公司. BIS的新产品 BISMARC 是一个通用过程控制和监控的SCADA系 ...