php获取字符串前几位的实例(substr返回字符串的子串用法)

在实际项目应用中,经常遇到使用php获取字符串前几位用来比较、赋值等等。今天给大家分享使用php substr 获取字符串前几位、后几位、指定位的用法。

substr

(PHP 4, PHP 5)

substr — 返回字符串的子串

说明

string substr ( string $string , int $start [, int $length ] )

返回字符串 string 由 start 和 length 参数指定的子字符串。

参数

string

输入字符串。

start

如果 start 是非负数,返回的字符串将从 string 的 start 位置开始,从 0 开始计算。例如,在字符串 “abcdef” 中,在位置 0 的字符是 “a”,位置 2 的字符串是 “c” 等等。

如果 start 是负数,返回的字符串将从 string 结尾处向前数第 start 个字符开始。

如果 string 的长度小于或等于 start,将返回 FALSE。

Example #1 使用负数 start

<?php
$rest = substr(“abcdef”, -1); // 返回 “f”
$rest = substr(“abcdef”, -2); // 返回 “ef”
$rest = substr(“abcdef”, -3, 1); // 返回 “d”
?>

length

如果提供了正数的 length,返回的字符串将从 start 处开始最多包括 length 个字符(取决于 string 的长度)。

如果提供了负数的 length,那么 string 末尾处的许多字符将会被漏掉(若 start 是负数则从字符串尾部算起)。如果 start 不在这段文本中,那么将返回一个空字符串。

如果提供了值为 0,FALSE 或 NULL 的 length,那么将返回一个空字符串。

如果没有提供 length,返回的子字符串将从 start 位置开始直到字符串结尾。

Example #2 使用负数 length

<?php
$rest = substr(“abcdef”, 0, -1); // 返回 “abcde”
$rest = substr(“abcdef”, 2, -1); // 返回 “cde”
$rest = substr(“abcdef”, 4, -4); // 返回 “”
$rest = substr(“abcdef”, -3, -1); // 返回 “de”
?>

返回值

返回提取的子字符串, 或者在失败时返回 FALSE。

更新日志版本说明

5.2.2 – 5.2.6 If the start parameter indicates the position of a negative truncation or beyond, false is returned. Other versions get the string from start.

范例

Example #3 substr() 基本用法

<?php
echo substr(‘abcdef', 1); // bcdef
echo substr(‘abcdef', 1, 3); // bcd
echo substr(‘abcdef', 0, 4); // abcd
echo substr(‘abcdef', 0, 8); // abcdef
echo substr(‘abcdef', -1, 1); // f

// 访问字符串中的单个字符
// 也可以使用中括号
$string = ‘abcdef';
echo $string[0]; // a
echo $string[3]; // d
echo $string[strlen($string)-1]; // f
?>

Example #4 substr() casting behaviour

<?php
class apple {
public function __toString() {
return “green”;
}
}

echo “1) “.var_export(substr(“pear”, 0, 2), true).PHP_EOL;
echo “2) “.var_export(substr(54321, 0, 2), true).PHP_EOL;
echo “3) “.var_export(substr(new apple(), 0, 2), true).PHP_EOL;
echo “4) “.var_export(substr(true, 0, 1), true).PHP_EOL;
echo “5) “.var_export(substr(false, 0, 1), true).PHP_EOL;
echo “6) “.var_export(substr(“”, 0, 1), true).PHP_EOL;
echo “7) “.var_export(substr(1.2e3, 0, 4), true).PHP_EOL;
?>

以上例程会输出:

1) ‘pe'
2) '54'
3) ‘gr'
4) ‘1'
5) false
6) false
7) ‘1200'

错误/异常

错误时返回 FALSE。

<?php
var_dump(substr(‘a', 1)); // bool(false)
?>

以上这篇php获取字符串前几位的实例(substr返回字符串的子串用法)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。

(0)

相关推荐

  • php去掉字符串的最后一个字符附substr()的用法

    今天项目中用到,去掉字符串中的最后一个字符 原字符串1,2,3,4,5,6, 去掉最后一个字符",",最终结果为1,2,3,4,5,6 代码如下: 复制代码 代码如下: $str = "1,2,3,4,5,6,"; $newstr = substr($str,0,strlen($str)-1); echo $newstr; 解读: 采用php的substr()方法, 语法: string substr(string string, int start, int [l

  • PHP中substr函数字符串截取用法分析

    本文实例讲述了PHP中substr函数字符串截取用法.分享给大家供大家参考,具体如下: PHP中substr函数定义如下: substr(string,start,length) 参数说明如下: string 必需.规定要返回其中一部分的字符串. start  必需.规定在字符串的何处开始. 正数 - 在字符串的指定位置开始 负数 - 在从字符串结尾开始的指定位置开始 0 - 在字符串中的第一个字符处开始 length 可选.规定被返回字符串的长度.默认是直到字符串的结尾. 正数 - 从 sta

  • 详解PHP用substr函数截取字符串中的某部分

    经常看到有新手问PHP有没有类似asp的left函数或right函数,实现截取某字符串左边或右边开始N个字符的函数.答案当然是有的.PHP中的substr函数就可以做的到,只不过PHP把二个函数合二为一了. 现在整理了一下substr函数的用法,做了几个例子以解新人之惑,高手请飘过. 我们先来看一下PHP substr函数的语法: string substr(string string, int start, int [length]) 参数string为要操作的字符串 参数start为你要截取

  • PHP使用strstr()函数获取指定字符串后所有字符的方法

    本文实例讲述了PHP使用strstr()函数获取指定字符串后所有字符的方法.分享给大家供大家参考,具体如下: PHP的strstr()函数可搜索字符串在另一字符串中的第一次出现位置,并返回字符串的剩余部分. strstr()函数定义如下: strstr(string,search,before_search) 参数说明: string 必需.规定被搜索的字符串. search  必需.规定所搜索的字符串. 如果此参数是数字,则搜索匹配此数字对应的 ASCII 值的字符. before_searc

  • php字符串函数学习之substr()

    <?php /* 定义和用法 substr() 函数返回提取的子字符串, 或者在失败时返回 FALSE. 语法 substr(string,start,length) 参数 描述 string 必需.规定要返回其中一部分的字符串. start  必需.规定在字符串的何处开始. 非负数 - 从 string 的 start 位置开始,从 0 开始计算. 负数 - 从 string 结尾处向前数第 start 个字符开始. 如果 string 的长度小于或等于 start,将返回 FALSE. le

  • php获取字符串前几位的实例(substr返回字符串的子串用法)

    在实际项目应用中,经常遇到使用php获取字符串前几位用来比较.赋值等等.今天给大家分享使用php substr 获取字符串前几位.后几位.指定位的用法. substr (PHP 4, PHP 5) substr - 返回字符串的子串 说明 string substr ( string $string , int $start [, int $length ] ) 返回字符串 string 由 start 和 length 参数指定的子字符串. 参数 string 输入字符串. start 如果

  • JavaScript字符串对象slice方法入门实例(用于字符串截取)

    JavaScript slice 方法 slice 方法用于截取字符串中的一部分并返回该部分字符串.其语法如下: 复制代码 代码如下: str_object.replace(start, end) 参数说明: 参数 说明 str_object 要操作的字符串(对象) start 必需.要截取的开始位置,从 0 开始计算:如果为负数,则从字符串末尾反向开始计算 end 可选.要截取的结束位置,如果省略则到字符串结束:如果为负数,则从字符串末尾反向开始计算 slice 方法实例 复制代码 代码如下:

  • PHP中strncmp()函数比较两个字符串前2个字符是否相等的方法

    本文实例讲述了PHP中strncmp()函数比较两个字符串前2个字符是否相等的方法.分享给大家供大家参考,具体如下: PHP中的strncmp()函数用于比较两个字符串(区分大小写),可判断两个字符串前n个字符是否相等. strncmp()函数定义如下: strncmp(string1,string2,length) 参数说明: string1 必需.规定要比较的首个字符串. string2 必需.规定要比较的第二个字符串. length 必需.规定比较中所用的每个字符串的字符数. 返回值说明:

  • python手机号前7位归属地爬虫代码实例

    需求分析 项目上需要用到手机号前7位,判断号码是否合法,还有归属地查询.旧的数据是几年前了太久了,打算用python爬虫重新爬一份 单线程版本 # coding:utf-8 import requests from datetime import datetime class PhoneInfoSpider: def __init__(self, phoneSections): self.phoneSections = phoneSections def phoneInfoHandler(sel

  • js获取字符串最后一位方法汇总

    方法一:运用String对象下的charAt方法 charAt() 方法可返回指定位置的字符. 复制代码 代码如下: str.charAt(str.length – 1) 请注意,JavaScript 并没有一种有别于字符串类型的字符数据类型,所以返回的字符是长度为 1 的字符串 方法二:运用String对象下的substr方法 substr() 方法可在字符串中抽取从 start 下标开始的指定数目的字符. 复制代码 代码如下: str.substr(str.length-1,1) 重要事项:

  • JS实现用特殊符号替换字符串的中间部分区域的实例代码

    一.引入 相信很多人都遇到过敏感信息需要做部分隐藏功能,大多数都是用特殊符号去替换. 正好今天我又遇到这样的前端显示的需求,正好把相关JS记录下来,方便下次再用. 二.JS部分 /* 部分隐藏处理 ** str 需要处理的字符串 ** frontLen 保留的前几位 ** endLen 保留的后几位 ** cha 替换的字符串 */ function plusXing(str, frontLen, endLen,cha) { var len = str.length - frontLen - e

  • Python 获取div标签中的文字实例

    预备知识点 compile 函数 compile 函数用于编译正则表达式,生成一个正则表达式( Pattern )对象,供 match() 和 search() 这两个函数使用. 语法格式为: re.compile(pattern[, flags]) .compile(pattern[, flags]) 参数: pattern : 一个字符串形式的正则表达式 flags 可选,表示匹配模式,比如忽略大小写,多行模式等,具体参数为: re.I 忽略大小写 re.L 表示特殊字符集 \w, \W,

  • vue treeselect获取当前选中项的label实例

    我就废话不多说了,大家还是直接看代码吧~ <treeselect :placeholder="$t('taskManage.lockTask.selDeptId')" :options="deptTree" :normalizer="normalizer" v-model="formData.deptId" @select="selectDepart"> </treeselect>

  • js获取当前日期前七天的方法

    本文实例讲述了js获取当前日期前七天的方法.分享给大家供大家参考.具体如下: //设置日期,当前日期的前七天 var myDate = new Date(); //获取今天日期 myDate.setDate(myDate.getDate() - 7); var dateArray = []; var dateTemp; var flag = 1; for (var i = 0; i < 7; i++) { dateTemp = (myDate.getMonth()+1)+"-"+

  • Android获取手机屏幕宽高、状态栏高度以及字符串宽高信息的方法

    本文实例讲述了Android获取手机屏幕宽高.状态栏高度以及字符串宽高信息的方法.分享给大家供大家参考.具体如下: 首先定义TextView对象commentText 获取文字的宽高: TextPaint textPaint = new TextPaint(Paint.ANTI_ALIAS_FLAG); textPaint.setTextSize(commentText.getTextSize()); textPaint.setColor(Color.WHITE); FontMetrics fo

随机推荐