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


Posted in PHP onMarch 08, 2017

在实际项目应用中,经常遇到使用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返回字符串的子串用法)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
PHP与已存在的Java应用程序集成
Oct 09 PHP
PHP函数篇之掌握ord()与chr()函数应用
Dec 05 PHP
PHP 杂谈《重构-改善既有代码的设计》之一 重新组织你的函数
Apr 09 PHP
设置php页面编码的两种方法示例介绍
Mar 03 PHP
php函数serialize()与unserialize()用法实例
Nov 06 PHP
php中strtotime函数用法详解
Nov 15 PHP
php使用pdo连接sqlite3的配置示例
May 27 PHP
浅谈ThinkPHP中initialize和construct的区别
Apr 01 PHP
ThinkPHP+EasyUI之ComboTree中的会计科目树形菜单实现方法
Jun 09 PHP
thinkPHP5分页功能实现方法分析
Oct 25 PHP
PHP实现15位身份证号转18位的方法分析
Oct 16 PHP
php装饰者模式简单应用案例分析
Oct 23 PHP
php 截取GBK文档某个位置开始的n个字符方法
Mar 08 #PHP
php封装json通信接口详解及实例
Mar 07 #PHP
PHP获取真实客户端的真实IP
Mar 07 #PHP
php实现简单加入购物车功能
Mar 07 #PHP
mac os快速切换多个PHP版本的方法
Mar 07 #PHP
PHP + plupload.js实现多图上传并显示进度条加删除实例代码
Mar 06 #PHP
PHP实现添加购物车功能
Mar 06 #PHP
You might like
全国FM电台频率大全 - 4 山西省
2020/03/11 无线电
PHP开发入门教程之面向对象
2006/12/05 PHP
PHP整数取余返回负数的相关解决方法
2014/05/15 PHP
Discuz! 6.1_jQuery兼容问题
2008/09/23 Javascript
写了10年的Javascript也未必全了解的连续赋值运算
2011/03/25 Javascript
jquery中:input和input的区别分析
2011/07/13 Javascript
JavaScript Memoization 让函数也有记忆功能
2011/10/27 Javascript
编写针对IE的JS代码两种编写方法
2013/01/30 Javascript
laypage分页控件使用实例详解
2016/05/19 Javascript
JS+Canvas实现的俄罗斯方块游戏完整实例
2016/12/12 Javascript
移动端利用H5实现压缩图片上传功能
2017/03/29 Javascript
vue 解决数组赋值无法渲染在页面的问题
2019/10/28 Javascript
基于JS实现table导出Excel并保留样式
2020/05/19 Javascript
[06:07]辉夜杯现场观众互动 “比谁远送显示器”
2015/12/26 DOTA
[01:02:02]DOTA2上海特级锦标赛A组败者赛 EHOME VS CDEC第二局
2016/02/25 DOTA
Python通过属性手段实现只允许调用一次的示例讲解
2018/04/21 Python
浅谈Python中的全局锁(GIL)问题
2019/01/11 Python
pandas DataFrame 交集并集补集的实现
2019/06/24 Python
ERLANG和PYTHON互通实现过程详解
2019/07/05 Python
Pandas之排序函数sort_values()的实现
2019/07/09 Python
Pytorch 实现focal_loss 多类别和二分类示例
2020/01/14 Python
详解字符串在Python内部是如何省内存的
2020/02/03 Python
Dower & Hall官网:英国小众轻奢珠宝品牌
2019/01/31 全球购物
美国气象仪器、花园装饰和墙壁艺术商店:Wind & Weather
2019/05/29 全球购物
计算机专业毕业生自荐信
2013/12/31 职场文书
给女朋友的道歉信
2014/01/10 职场文书
学生会个人自荐书范文
2014/02/12 职场文书
学校后勤岗位职责
2014/02/19 职场文书
中西医专业毕业生职业规划书
2014/02/24 职场文书
初中优秀教师事迹材料
2014/08/18 职场文书
2014小学语文教学工作总结
2014/12/17 职场文书
工程部岗位职责
2015/02/10 职场文书
2015年暑假工作总结
2015/07/13 职场文书
新人入职感言
2015/07/31 职场文书
深入讲解Vue中父子组件通信与事件触发
2022/03/22 Vue.js
MySQL数据库查询之多表查询总结
2022/08/05 MySQL