php常用字符函数实例小结


Posted in PHP onDecember 29, 2016

本文实例总结了php常用字符函数。分享给大家供大家参考,具体如下:

1. 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。

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

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

如果提供了负数的length,那么string末尾处的许多字符将会漏掉,即为从末尾处不考虑字符(可以理解我截断),如果start不在文本中,那么将返回一个空字符串。

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

如果没有提供length,返回的字符串将从start的位置一直到字符结束。

$rest=substr("abcdef","0","-1");  //返回 abcde
$rest=substr("abcdef","2","-1");  //返回 cde
$rest=substr("abcdef"," 4","-4"); //返回 NULL
$rest=substr("abcdef","-3","-1"); //返回 de

[ ]中括号代表该参数为可选参数,不设定即为默认参数。(接触php快8个月了,一直奇怪函数的参数为啥要加个中括号,今天终于忍不住百度了下!惭愧!)

2. int preg_match(string  $pattern ,string $subject [, array &$matches  [,  int  $flag=0 [, int $offset=0 ]]])

函数功能:搜索subject与pattern给定的正则表达式的一个匹配。

参数

$pattern:要搜索的模式,字符类型。
$subject:输入字符串。
$matches:如果提供了参数matches,它将被填充为搜索结果,$matches[0]包含完整模式匹配到的文本,$matches[1]将包含第一个捕获子组匹配到文本,以此类推。
$flags :flags可以被设置为以下标记值:

   PREG_OFFSET_CAPTURE

如果传递了这个标记, 对于每一个出现的匹配返回时会附加字符串偏移量(相对于目标字符串的). 注意: 这会改变填充到matches参数的数组, 使其每个元素成为      一 个由 第0个元素是匹配到的字符串, 第1个元素是该匹配字符串 在目标字符串subject中的偏移量.

offset:

通常, 搜索从目标字符串的开始未知开始.可选参数offset用于 指定从目标字符串的某个未知开始搜索(单位是字节).

Note:

使用offset参数不同于向preg_match() 传递按照位置通过substr($subject, $offset)截取目标字符串结果, 因为pattern可以包含断言比如^,$ 或者(?<=x). 比较:

<?php
$subject = "abcdef";
$pattern = '/^def/';
preg_match($pattern, $subject, $matches, PREG_OFFSET_CAPTURE, 3);
print_r($matches);
?>

以上例程会输出:

Array
(
)
<?php
$subject = "abcdef";
$pattern = '/^def/';
preg_match($pattern, substr($subject,3), $matches, PREG_OFFSET_CAPTURE);
print_r($matches);
?>

将会产生匹配

Array
(
  [0] => Array
    (
      [0] => def
      [1] => 0
    )
)

3. strpos(string,find,start)

string:必须,规定被搜索的字符串。
find:必须,规定要查找的字符。
start:可选,规定开始搜索的位置,默认从第一个字符开始。

该函数对大小写敏感,如不希望这样可以使用stripos()函数

例:

echo strpos("Hello  world! "," wo ");// 输出 6

4. string dirname(string path)

函数功能:取得路径中的目录名。在 Win32 系统中,用斜线 (/) 或者反斜线 (\) 都可以;但是其它的操作系统的路径都是 (/)。

$path = "/etc/hostname";
$file = dirname($path);

$file 为 "/etc"

5. str_split(string,length)

string 必需。规定要分割的字符串。
length 可选。规定每个数组元素的长度。默认是 1。

<?php
print_r(str_split("Hello"));
?>

运行结果:

Array
(
[0] => H
[1] => e
[2] => l
[3] => l
[4] => o
)

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
php自定义函数之递归删除文件及目录
Aug 08 PHP
php学习笔记 面向对象的构造与析构方法
Jun 13 PHP
PHP 获取MySQL数据库里所有表的实现代码
Jul 13 PHP
PHP 正则表达式常用函数
Aug 17 PHP
php输出xml属性的方法
Mar 19 PHP
PHP将Excel导入数据库及数据库数据导出至Excel的方法
Jun 24 PHP
注意!PHP 7中不要做的10件事
Sep 18 PHP
PHP中Cookie的使用详解(简单易懂)
Apr 28 PHP
Yii2实现自定义独立验证器的方法
May 05 PHP
Laravel 5.5 的自定义验证对象/类示例代码详解
Aug 29 PHP
ThinkPHP5.0框架结合Swoole开发实现WebSocket在线聊天案例详解
Apr 02 PHP
PHP 面向对象程序设计之类属性与类常量实现方法分析
Apr 13 PHP
php常用正则函数实例小结
Dec 29 #PHP
详解ThinkPHP3.2.3验证码显示、刷新、校验
Dec 29 #PHP
php常用数组函数实例小结
Dec 29 #PHP
php正则修正符用法实例详解
Dec 29 #PHP
PHP登录(ajax提交数据和后台校验)实例分享
Dec 29 #PHP
php preg_match的匹配不同国家语言实例
Dec 29 #PHP
php使用正则表达式获取字符串中的URL
Dec 29 #PHP
You might like
php自动给网址加上链接的方法
2015/06/02 PHP
PHP使用SOAP扩展实现WebService的方法
2016/04/01 PHP
yii2项目实战之restful api授权验证详解
2017/05/20 PHP
PHP文件系统管理(实例讲解)
2017/09/19 PHP
jQuery 跨域访问问题解决方法
2009/12/02 Javascript
深入理解JavaScript系列(10) JavaScript核心(晋级高手必读篇)
2012/01/15 Javascript
禁止空格提交表单的js代码
2013/11/17 Javascript
jQuery中unwrap()方法用法实例
2015/01/16 Javascript
javascript精确统计网站访问量实例代码
2015/12/19 Javascript
JS实现表单多文件上传样式美化支持选中文件后删除相关项
2016/09/30 Javascript
微信小程序Server端环境配置详解(SSL, Nginx HTTPS,TLS 1.2 升级)
2017/01/12 Javascript
javascript编程实现栈的方法详解【经典数据结构】
2017/04/11 Javascript
js使用i18n实现页面国际化的方法
2017/05/09 Javascript
javascript 作用于作用域链的详解
2017/09/27 Javascript
浅谈vue-router2路由参数注意的问题
2017/11/08 Javascript
vue修改对象的属性值后页面不重新渲染的实例
2018/08/09 Javascript
python基于itchat实现微信群消息同步机器人
2017/02/27 Python
python编程实现希尔排序
2017/04/13 Python
Python 获得命令行参数的方法(推荐)
2018/01/24 Python
Python创建字典的八种方式
2019/02/27 Python
Merchant 1948澳大利亚:新西兰领先的鞋类和靴子供应商
2018/03/24 全球购物
英国床垫和床架购物网站:Bedman
2019/11/04 全球购物
拉夫劳伦爱尔兰官方网站:Ralph Lauren爱尔兰
2020/04/10 全球购物
金融专业个人求职信范文
2013/11/28 职场文书
黄河象教学反思
2014/02/10 职场文书
大学军训感言1500字
2014/03/09 职场文书
揭牌仪式主持词
2014/03/19 职场文书
承诺书的格式范文
2014/03/28 职场文书
说好普通话圆梦你我他演讲稿
2014/09/21 职场文书
上班迟到检讨书300字
2014/10/18 职场文书
入党介绍人意见范文
2015/06/01 职场文书
2016大学生诚信考试承诺书
2016/03/25 职场文书
2016年机关单位节能宣传周活动总结
2016/04/05 职场文书
Redis安装启动及常见数据类型
2021/04/14 Redis
如何用 Python 子进程关闭 Excel 自动化中的弹窗
2021/05/07 Python
生命的关键成分来自太空?陨石说是的
2022/04/29 数码科技