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 相关文章推荐
session 的生命周期是多长
Oct 09 PHP
php 在文件指定行插入数据的代码
May 08 PHP
php中防止伪造跨站请求的小招式
Sep 02 PHP
深入array multisort排序原理的详解
Jun 18 PHP
具有时效性的php加密解密函数代码
Jun 19 PHP
PHP独立Session数据库存储操作类分享
Jun 11 PHP
thinkphp配置连接数据库技巧
Dec 02 PHP
PHP模板引擎Smarty之配置文件在模板变量中的使用方法示例
Apr 11 PHP
PHP中Restful api 错误提示返回值实现思路
Apr 12 PHP
php一个文件搞定微信jssdk配置
Dec 12 PHP
删除PHP数组中头部、尾部、任意元素的实现代码
Apr 10 PHP
PHP实现上传图片到数据库并显示输出的方法
May 31 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
PHP中static关键字原理的学习研究分析
2011/07/18 PHP
迁移PHP版本到PHP7
2015/02/06 PHP
php实现留言板功能
2017/03/05 PHP
htm调用JS代码
2007/03/15 Javascript
JQuery 技巧和窍门整理(8个)
2010/04/22 Javascript
javascript Window及document对象详细整理
2011/01/12 Javascript
jquery 实现表单验证功能代码(简洁)
2012/07/03 Javascript
JS+CSS实现可拖动的弹出提示框
2015/02/16 Javascript
jQuery构造函数init参数分析
2015/05/13 Javascript
完美实现bootstrap分页查询
2015/12/09 Javascript
jQuery实现摸拟alert提示框
2016/05/22 Javascript
深入理解(function(){... })();
2016/08/16 Javascript
jQuery实现web页面樱花坠落的特效
2017/06/01 jQuery
js对象实例详解(JavaScript对象深度剖析,深度理解js对象)
2017/09/21 Javascript
javascript 判断用户有没有操作页面
2017/10/17 Javascript
微信小程序实现点击按钮修改文字大小功能【附demo源码下载】
2017/12/06 Javascript
vue+webpack实现异步组件加载的方法
2018/02/03 Javascript
mpvue跳转页面及注意事项
2018/08/03 Javascript
react高阶组件添加和删除props
2019/04/26 Javascript
vue实现登录页面的验证码以及验证过程解析(面向新手)
2019/08/02 Javascript
15个简单的JS编码标准让你的代码更整洁(小结)
2020/07/16 Javascript
vue-calendar-component 封装多日期选择组件的实例代码
2020/12/04 Vue.js
用Python进行TCP网络编程的教程
2015/04/29 Python
Python使用chardet判断字符编码
2015/05/09 Python
Python中input与raw_input 之间的比较
2017/08/20 Python
python简易远程控制单线程版
2018/06/20 Python
对python中for、if、while的区别与比较方法
2018/06/25 Python
Python pickle模块常用方法代码实例
2020/10/10 Python
css3 2D图片转动样式可以扩充到Js当中
2014/04/29 HTML / CSS
CSS3中几个新增加的盒模型属性使用教程
2016/03/01 HTML / CSS
美国东北部户外服装和设备零售商:Eastern Mountain Sports
2016/10/05 全球购物
聚美优品恶搞广告词
2014/03/14 职场文书
党员公开承诺书和承诺事项
2014/03/25 职场文书
战略合作协议书范本
2014/04/18 职场文书
初中生庆国庆演讲稿范文2014
2014/09/25 职场文书
风雨哈佛路观后感
2015/06/03 职场文书