php中字符串反转的函数(php常用字符串查找函数strstr与strpos实例分析)
php中字符串反转的函数
php常用字符串查找函数strstr与strpos实例分析本文实例讲述了php常用字符串查找函数strstr()与strpos()。分享给大家供大家参考,具体如下:
一句话使用strpos判断 ===
或!==
,这样才能达到预期的效果,性能要比strstr要好,只是判断是否包含某个字符串就用这个了。
string strstr ( string $haystack , mixed $needle [, bool $before_needle = false ] )
1、$haystack被查找的字符串,$needle要查找的内容
2、如查找到则返回字符串的一部分,如没找到则返回FALSE
3、该函数区分大小写,如果想要不区分大小写,请使用 stristr()
4、如果你仅仅想确定needle是否存在于haystack中请使用速度更快、耗费内存更少的strpos()
函数
|
<?php $email = 'name@example.com' ; $domain = strstr ( $email , '@' ); $name = strstr ( $email , '@' ,TRUE); $no_con = strstr ( $email , '99' ); echo $domain ; //输出 @example.com echo $name ; //输出name 从 PHP 5.3.0 起 var_dump( $no_con ); //如果没找到,则返回布尔值 FALSE ?> |
运行结果:
@example.com
name
bool(false)
mixed strpos ( string $haystack , mixed $needle [, int $offset = 0 ] )
1、$haystack被查找的字符串,$needle要查找的内容
2、返回 needle 在 haystack 中首次出现的数字位置
3、该函数区分大小写,如果想要不区分大小写,请使用 stripos()
4、返回值,如找到的话,返回needle 存在于 haystack 字符串起始的位置(注意字符串位置是从0开始,而不是从1开始),没找到则返回FALSE,但也可能返回等同于 FALSE 的非布尔值
|
<?php $mystring = 'abc' ; $findme = 'a' ; $pos = strpos ( $mystring , $findme ); echo $pos ; //输出0,既是当前a的位置 ?> |
运行结果:
0
这里2个比较相似的函数,在这里简单介绍下,只需记住有这个函数即可,用时简单看下手册。
1、strrpos()
,计算指定字符串在目标字符串中最后一次出现的位置
实例1 使用 ===
|
<?php $mystring = 'abc' ; $findme = 'a' ; $pos = strpos ( $mystring , $findme ); // 注意这里使用的是 ===。简单的 == 不能像我们期待的那样工作, // 因为 'a' 是第 0 位置上的(第一个)字符。 if ( $pos === false) { echo "The string '$findme' was not found in the string '$mystring'" ; } else { echo "The string '$findme' was found in the string '$mystring'" ; echo " and exists at position $pos" ; } ?> |
实例2 使用 !==
|
<?php $mystring = 'abc' ; $findme = 'a' ; $pos = strpos ( $mystring , $findme ); // 使用 !== 操作符。使用 != 不能像我们期待的那样工作, // 因为 'a' 的位置是 0。语句 (0 != false) 的结果是 false。 if ( $pos !== false) { echo "The string '$findme' was found in the string '$mystring'" ; echo " and exists at position $pos" ; } else { echo "The string '$findme' was not found in the string '$mystring'" ; } ?> |
实例3 使用位置偏移量
|
<?php // 忽视位置偏移量之前的字符进行查找 $newstring = 'abcdef abcdef' ; $pos = strpos ( $newstring , 'a' , 1); // $pos = 7, 不是 0 ?> |
注释
Note: 此函数可安全用于二进制对象。
2、strripos()
,计算指定字符串在目标字符串中最后一次出现的位置(不区分大小写)
总结:注意这几个函数如果没找到时则会返回FALSE,故在判断两边是否相等时候(if),注意两边的类型,以上几个函数,是在PHP中比较常用的字符串查找函数了,如需更强大功能的话,如邮箱、手机号的匹配、验证的话,则需借助正则表达式完成。
希望本文所述对大家PHP程序设计有所帮助。
原文链接:https://www.cnblogs.com/jinsanguo/p/7620070.html
- phpword生成图片(PHP生成图片的方法分享)
- php怎么弄不重复字符串(PHP中将一个字符串部分字符用星号*替代隐藏的实现代码)
- php验证码思路(PHP实现字母数字混合验证码功能)
- phpstudy怎么升级mysql(phpStudy中升级MySQL版本到5.7.17的方法步骤)
- iis运行php程序(Windows2003+IIS7 Express使用FastCgi运行php)
- phpstudy修改为什么进不去(phpstudy2018升级后站点及phpmyadmin打开404解决方案)
- thinkphp5框架怎么打开(thinkphp5.1框架中容器Container和门面Facade的实现方法分析)
- php命名空间真的存在吗(PHP中命名空间的使用例子)
- php数组练习题答案(PHP 数组黑名单/白名单实例代码详解)
- js和php加密(RSA实现JS前端加密与PHP后端解密功能示例)
- php脚本通过文件路径批量上传文件(php遍历目录下文件并按修改时间排序操作示例)
- php代码最可靠的加密方式(php DES加密算法实例分析)
- phpstudy中php用什么版本(phpstudy是什么?phpstudy有什么用?)
- linux安装php目录路径修改(ubuntu环境下的php相关路径与修改方法)
- php7优化技巧(php7性能提升的原因详解)
- dedecms手机独立域名(DedeCMS Wap.php 绑定域名的解决办法)
- 苹果自研芯片跑分对比 A16芯片排名靠后,M1系列霸榜(苹果自研芯片跑分对比)
- X86处理器的梦魇 苹果M1自研芯片到底有多强(苹果M1自研芯片到底有多强)
- 泰剧《爱欲之神》Boom kitkong和Great合体杂志(泰剧爱欲之神Boomkitkong和Great合体杂志)
- 素人恋爱综艺火药味十足 男生为赢得芳心集体扯头花,真是出好戏(素人恋爱综艺火药味十足)
- 《囧妈》为何受抵制 春节七部影片撤档背后的责任与博弈(囧妈为何受抵制)
- 提醒 2019年起河南驾考要开设科目五 官方回应来了(2019年起河南驾考要开设科目五)
热门推荐
- php中isset函数有什么功能(PHP中的empty、isset、isnull的区别与使用实例)
- extjs Border边框布局
- sql server修改表的字段类型后,不能保存
- 如何判别云服务器的优劣(选用云服务器的这四大风险必须知道)
- mysql常用数据模型(MySQL数据库基于sysbench实现OLTP基准测试)
- linux怎么搭建nfs(通过案例深入解析linux NFS机制)
- pythonssl版本(解决Python 使用h5py加载文件,看不到keys的问题)
- mysql恢复数据库(MySQL 两种恢复数据的方法)
- SQL Server中raiserror
- python表白神器教程(python浪漫表白源码)
排行榜
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9