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 flv视频时间获取函数
Jun 29 PHP
phpmyadmin3 安装配置图解教程
Mar 29 PHP
PHP截断标题且兼容utf8和gb2312编码
Sep 22 PHP
apache中为php 设置虚拟目录
Dec 17 PHP
PHP 前加at符合@的作用解析
Jul 31 PHP
PHP实现文件上传与下载实例与总结
Mar 13 PHP
yii2分页之实现跳转到具体某页的实例代码
Jun 02 PHP
PHP 极验验证码实例讲解
Sep 29 PHP
php版阿里云OSS图片上传类详解
Dec 01 PHP
PHP自动补全表单的两种方法
Mar 06 PHP
OAuth认证协议中的HMACSHA1加密算法(实例)
Oct 25 PHP
PHP使用openssl扩展实现加解密方法示例
Feb 20 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中的MYSQL常用函数(php下操作数据库必备)
2010/09/12 PHP
php 实现进制转换(二进制、八进制、十六进制)互相转换实现代码
2010/10/22 PHP
php批量删除cookie的简单实现方法
2015/01/26 PHP
php字符串替换函数substr_replace()用法实例
2015/03/17 PHP
javascript IFrame 强制刷新代码
2009/07/23 Javascript
JS判断是否为数字,是否为整数,是否为浮点数的代码
2010/04/24 Javascript
return false;和e.preventDefault();的区别
2010/07/11 Javascript
Json对象替换字符串占位符实现代码
2010/11/17 Javascript
JavaScript中的匀速运动和变速(缓冲)运动详细介绍
2012/11/11 Javascript
Javascript脚本实现静态网页加密实例代码
2013/11/05 Javascript
jquery鼠标停止移动事件
2013/12/21 Javascript
jQuery中Dom的基本操作小结
2014/01/23 Javascript
js阻止默认事件与js阻止事件冒泡示例分享 js阻止冒泡事件
2014/01/27 Javascript
JavaScript中计算网页中某个元素的位置
2015/06/10 Javascript
jQuery插件开发精品教程(让你的jQuery更上一个台阶)
2015/11/07 Javascript
AngularJS路由实现页面跳转实例
2017/03/03 Javascript
Node.js使用Express创建Web项目详细教程
2017/03/31 Javascript
详解VUE 定义全局变量的几种实现方式
2017/06/01 Javascript
原生js获取left值和top值的三种方法
2017/08/02 Javascript
关于vue中watch检测到不到对象属性的变化的解决方法
2018/02/08 Javascript
React中的refs的使用教程
2018/02/13 Javascript
用jQuery将JavaScript对象转换为querystring查询字符串的方法
2018/11/12 jQuery
Jquery的Ajax技术使用方法
2019/01/21 jQuery
浅谈vuex中store的命名空间
2019/11/08 Javascript
JS+DIV实现拖动效果
2020/02/11 Javascript
Python基于sklearn库的分类算法简单应用示例
2018/07/09 Python
Python3模拟登录操作实例分析
2019/03/12 Python
Python动态参数/命名空间/函数嵌套/global和nonlocal
2019/05/29 Python
python中从for循环延申到推导式的具体使用
2019/11/29 Python
UGG雪地靴德国官网:UGG德国
2016/11/19 全球购物
买房委托公证书
2014/04/08 职场文书
彩色的翅膀教学反思
2014/04/25 职场文书
2014年大学生党员自我评议
2014/09/22 职场文书
文员岗位职责
2015/02/04 职场文书
大学入学感言
2015/08/01 职场文书
对象析构函数__del__在Python中何时使用
2022/03/22 Python