php中strstr、strrchr、substr、stristr四个函数的区别总结

投稿:junjie 字体:[增加 减小] 类型:转载 时间:2014-09-22我要评论

这篇文章主要介绍了php中strstr、strrchr、substr、stristr四个函数的区别总结,这4个函数是PHP中常用的字符串相关函数,需要的朋友可以参考下
 

php中strstr、strrchr、substr、stristr四个函数用法区别:

php中strstr strrchr substr stristr这四个字符串操作函数特别让人容易混淆,常用的是substr,strstr,基本上可以满足对字符串的操作。

下面介绍一下这个几个函数的区别。

一、strstr和strcchr的区别

strstr 显示第一次找到,要查找的字符串,以及后面的字符串。 
strrchr 显示最后一次找到,要查找的字符串,以及后面的字符串。

复制代码代码如下:

<?php 
$email = 'test@test.com@jb51.net'; 
$domain = strstr($email, '@'); 
echo "strstr 测试结果 $domain<br>"; 
$domain = strrchr($email, '@'); 
echo "strrchr 测试结果 $domain<br>"; 
?>

结果如下:

strstr 测试结果 @test.com@jb51.net 
strrchr 测试结果 @jb51.net

二、strstr和stristr的区别

strstr是大小写敏感的。 
stristr是大小写不敏感的。

复制代码代码如下:

<?php 
$email = 'zhangYing@jb51.net'; 
$domain = strstr($email, 'y'); 
echo "strstr 测试结果 $domain<br>"; 
$domain = stristr($email, 'y'); 
echo "stristr 测试结果 $domain<br>"; 
?>

结果如下:

strstr 测试结果 jb51.net 
stristr 测试结果 Ying@jb51.net

三、strstr和substr的区别

strsr是匹配后截取。 
substr是不匹配,根据起始位置,进行截取。

复制代码代码如下:

<?php 
$email = 'zhangYing@jb51.net'; 
$domain = strstr($email, 'y'); 
echo "strstr 测试结果 $domain<br>"; 
$domain = substr($email,-7); 
echo "substr 测试结果 $domain<br>"; 
?>

结果如下: 
strstr 测试结果 jb51.net 
substr 测试结果 jb51.net

php中strstr、strrchr、substr、stristr四个函数的区别总结的更多相关文章

  1. php中strstr、strrchr、substr、stristr四个函数用法区别

    php中strstr.strrchr.substr.stristr四个函数用法区别: php中strstr strrchr substr stristr这四个字符串操作函数特别让人容易混淆,常用的是s ...

  2. C++中构造函数,拷贝构造函数和赋值函数的区别和实现

    C++中一般创建对象,拷贝或赋值的方式有构造函数,拷贝构造函数,赋值函数这三种方法.下面就详细比较下三者之间的区别以及它们的具体实现 1.构造函数 构造函数是一种特殊的类成员函数,是当创建一个类的对象 ...

  3. SQLServer中DataLength()和Len()两内置函数的区别(转载)

    最近工作中遇到了个问题:在数据库中声明字段类型时char(4),但实际只存储了‘DCE’三个字母,程序中拼装以该字段作为key的Map中,会把‘DCE’+空格作为其Key,这样造成用没加空格的‘DCE ...

  4. SQLServer中DataLength()和Len()两内置函数的区别

    最近工作中遇到了个问题:在数据库中声明字段类型时char(4),但实际只存储了‘DCE’三个字母,程序中拼装以该字段作为key的Map中,会把‘DCE’+空格作为其Key,这样造成用没加空格的‘DCE ...

  5. C中strstr的实现方法

    做题目的时候须要自己实现strstr函数 /************************************************************************/ /* 编 ...

  6. Oracle中INSTR、SUBSTR和NVL的用法

    Oracle中INSTR.SUBSTR和NVL的用法 INSTR用法:INSTR(源字符串, 要查找的字符串, 从第几个字符开始, 要找到第几个匹配的序号) 返回找到的位置,如果找不到则返回0. 默认 ...

  7. C#中方法的参数的四种类型

    C#中方法的参数有四种类型:       1. 值参数类型  (不加任何修饰符,是默认的类型)       2. 引用型参数  (以ref 修饰符声明)       3. 输出型参数  (以out 修 ...

  8. 使用虚幻引擎中的C++导论(四-内存管理与垃圾回收)(终)

    使用虚幻引擎中的C++导论(四)(终) 第一,这篇是我翻译的虚幻4官网的新手编程教程,原文传送门,有的翻译不太好,但大体意思差不多,请支持我O(∩_∩)O谢谢. 第二,某些细节操作,这篇文章省略了,如 ...

  9. 领域模型中的实体类分为四种类型:VO、DTO、DO、PO

    http://kb.cnblogs.com/page/522348/ 由于不同的项目和开发人员有不同的命名习惯,这里我首先对上述的概念进行一个简单描述,名字只是个标识,我们重点关注其概念: 概念: V ...

随机推荐

  1. [置顶] Android的IPC访问控制设计与实现

    3.3.1 IPC钩子函数设计与实现 IPC Binder是Android最重要的进程间通信机制,因此,必须在此实施强制访问控制. 1. 修改secuirty.h 打开终端shell,输入指令“cd ...

  2. CRT远程连接server字符输出乱码解决一例

    CRT远程连接server字符输出乱码解决一例 环境: server:Centos 6.2 远端:win 7 CRT版本号:7.1.1 现象回想: 1.server端:中文字符显示正常,例如以下: 2 ...

  3. CoDel Test Script

    This TCL script is retrieved from http://www.pollere.net/CoDel.html in November 2013 :) # Codel test ...

  4. Intellj IDEA 启动参数调优

    (修改前记得备份) 修改IntellJ/bin/idea.exe.vmoptions修改成 -Xms512m -Xmx512m -Xmn164m -XX:MaxPermSize=250m -XX:Re ...

  5. django: startproject

    python 的 django 框架的安装教程很多,这里不列举安装过程,直接开始记开发应用过程. 1  startprojec,新建项目 $ django-admin.py startproject ...

  6. javascript之事件绑定

    曾经写过一篇随笔,attachEvent和addEventListener,跟本文内容有很多相似之处 本文链接:javascript之事件绑定 1.原始写法 <div onclick=" ...

  7. json_encode如何防止汉字转义成unicode

    众所周知,json_encode通常会把json中的汉字转义成unicode,但是这并不一定是我们想要的.有时候,我们需要获得汉字形式的json字符串,比如需要获得gbk编码的json字符串(只要把汉 ...

  8. HTML&CSS基础学习笔记1.2-HTML的全局属性?

    HTML元素都有属性,下面的这些全局属性是所有的HTML元素都可以使用的. 常见的有: HTML元素也有一些本身自己独特的属性,我们以后的笔记中有机会,会再为大家介绍哦. 下面是代码测验,具体的内容可 ...

  9. [vim]插件ctrlp

    ctrlp 这个插件可以快速搜索你的文件或者缓冲区 这样很多时候都不必打开nerdtree了. 直接利用快捷键C-p打开搜索命令.

  10. Java学习笔记--xml构造与解析之Sax的使用

    汇总:xml的构造与解析 http://www.cnblogs.com/gnivor/p/4624058.html 参考资料:http://www.iteye.com/topic/763895 利用S ...