热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

PHP字符串操作详解

PHP--字符串操作详解前言一、删除字符串1.trim()函数2.ltrim()函数3.rtrim()函数二、转义字符串4.addslashes()函数5.stripslashes

PHP--字符串操作详解

  • 前言
  • 一、删除字符串
    • 1.trim()函数
    • 2.ltrim()函数
    • 3.rtrim()函数
  • 二、转义字符串
    • 4.addslashes()函数
    • 5.stripslashes()函数
  • 三、检测和计算字符长度
    • 6.strlen()函数
  • 四、取字符窜子串
    • 7.substr()函数
  • 五、比较字符串
    • 8.strcmp()函数
    • 9.strcasecmp()函数
  • 六、字符串查找
    • 10.strstr()函数
    • 11.substr_count()函数
  • 七、字符串代替
    • 12.str_ ireplace()函数
    • 13.substr_replace()函数
  • 八、分割字符串
    • 14.explode()函数
  • 九、合成字符串
    • 15.implode()函数


前言

  字符串操作在PHP中占有重要的地位,几乎所有的脚本输入输出都需要对字符串进行处理,如何熟练处理和使用字符串处理函数,在开发中具有十分重要的意义。
  当然,本人学习字符串的处理并不是为了实际开发,而是为了在渗透测试中能看懂PHP源码,理解源码对字符串进行了哪些的处理,进而进行一些语句的注入。

一、删除字符串

1.trim()函数

函数功能:删除字符串左右边指定的字符串,并返回删除后的字符串。
语法格式:

tirm(string str,string charlist);
//第一个参数为输入的字符串
//第二个参数为需要删除的字符集合

在这里插入图片描述

2.ltrim()函数

函数功能:删除左边的指定字符串,并返回删除后的字符串
函数语法:

ltrim(string str,string charlist);

在这里插入图片描述

3.rtrim()函数

函数功能:该函数删除右边的指定的字符,与上面的函数方向相反不细说了。

二、转义字符串

4.addslashes()函数

函数功能:该函数实现了对字符串的转义,转义即让字符串变得没有意义,以防在插入数据库时会由字符串中的特殊数值造成错误。实现在字符串前加上 " \ " 实现转义。
函数语法:

string addslashes(string str);

5.stripslashes()函数

函数功能:实现字符串转义的还原。与上一个函数成双成对出现。

三、检测和计算字符长度

6.strlen()函数

函数功能:获取字符串的长度and 检测字符串长度返回true or false。
函数语法:

int strlen(string str);

在这里插入图片描述

四、取字符窜子串

7.substr()函数

函数功能:截取指定字符串中指定长度的字符串。但是在截取中文字符串的时候,可能会出现乱码,一个中文是两个字节,所以处理中文的时候需要写一个自定义的函数。
函数语法:

string substr(string str,int start,int length);
//第一个是输入的字符串
//第二个是开始的下标,若为负数从末尾开始截取
//第三个是截取长度

在这里插入图片描述

五、比较字符串

8.strcmp()函数

函数功能:对两个字符串进行比较,在比较的过程中区分大小写
函数语法:

int strcmp(string str1,string str2,int len);
//参数一、二就是要比较的字符串
//参数三比较的长度,不写表示全部比较
//返回值:相等返回0,str1>str2 返回正整数,str1

9.strcasecmp()函数

函数功能:对两个字符串进行比较,在比较的过程中不区分大小写,所以一般用在账号密码输入和验证码的输入当中取比较。
函数语法:

int strcasecmp(string str1,string str2);
//参数一、二就是要比较的字符串
//返回值:相等返回0,str1>str2 返回正整数,str1

在这里插入图片描述

六、字符串查找

10.strstr()函数

函数功能:在PHP中,提供了很多应用于字符串查找的函数,PHP 也可以像Word那样实现对字符串的查找功能,获取一个指定字符串在另一个字符串中首次出现的位置到后者末尾的子字符串。如果执行成功,则返回剩余字符串(存在相匹配的字符) ;如果没有找到相匹配的字符,则返回false.
函数语法:

string strstr ( string haystack, string needla);
//参数一:目的字符串。
//参数二:需要搜索的字符串,这个函数区分大小写。

11.substr_count()函数

函数功能:统计指定字符串出现的次数。
函数语法:

int strstr ( string haystack, string needla);
//参数一:目的字符串。
//参数二:需要搜索的字符串
//返回值:返回出现的次数

在这里插入图片描述

七、字符串代替

  通过字符串的替换技术可以实现对指定字符串中的指定字符进行替换。字符串的替换技术通过以下两个函数实现: str_ireplace()函数和substr_replace()函数。

12.str_ ireplace()函数

函数功能:将目的字符串中旧的字符串替换成新的字符串,还可以通过用户的输入,然后将关键词突出显示。
函数语法:

mixed str_ ireplace(mixed search,mixed repalce,mixed object,int count);
//参数一:需要替换的旧的字符串
//参数二:新的字符串
//参数三:查询的范围
//参数四:替换的处数

在这里插入图片描述

13.substr_replace()函数

函数功能:对指定的字符串进行修改
函数语法:

string substr replace(string str,string repl,int start,[int length]);
//参数一:需要替换的字符串
//参数二:新的字符串
//参数三:字符串开始的位置
//参数四:替换的字符串的长度

八、分割字符串

14.explode()函数

函数功能:对指定字符串,指定分割符号,进行字符串分割。

array oxplode(string separator tor,string str,[int lmlt]);
//参数一:指定分隔符
//参数二:要分割的字符串
//参数三:可选参数,设置了limit 参数,则返回的数组包含最多limit个元素
//而最后的元素将包含striog的剩余部分;如果limit参数是负数,
//则返回除了最后的-limit个元素外的所有元素

九、合成字符串

15.implode()函数

函数功能:将数组内容组合成一个新的字符串
语法格式:

string implode(string glue,array pleces);
//参数一:分隔符
//参数二:要合并字符串

在这里插入图片描述
  以上内容大部分都来源于潘凯华的《PHP入门到精通》,大概就这么多的内容,小伙伴们要是觉得写的还可以,赶紧点赞收藏吧!!!


推荐阅读
  • Python正则表达式学习记录及常用方法
    本文记录了学习Python正则表达式的过程,介绍了re模块的常用方法re.search,并解释了rawstring的作用。正则表达式是一种方便检查字符串匹配模式的工具,通过本文的学习可以掌握Python中使用正则表达式的基本方法。 ... [详细]
  • 本文介绍了Oracle数据库中tnsnames.ora文件的作用和配置方法。tnsnames.ora文件在数据库启动过程中会被读取,用于解析LOCAL_LISTENER,并且与侦听无关。文章还提供了配置LOCAL_LISTENER和1522端口的示例,并展示了listener.ora文件的内容。 ... [详细]
  • 本文介绍了Oracle存储过程的基本语法和写法示例,同时还介绍了已命名的系统异常的产生原因。 ... [详细]
  • 实现一个通讯录系统,可添加、删除、修改、查找、显示、清空、排序通讯录信息
    本文介绍了如何实现一个通讯录系统,该系统可以实现添加、删除、修改、查找、显示、清空、排序通讯录信息的功能。通过定义结构体LINK和PEOPLE来存储通讯录信息,使用相关函数来实现各项功能。详细介绍了每个功能的实现方法。 ... [详细]
  • 本文介绍了在开发Android新闻App时,搭建本地服务器的步骤。通过使用XAMPP软件,可以一键式搭建起开发环境,包括Apache、MySQL、PHP、PERL。在本地服务器上新建数据库和表,并设置相应的属性。最后,给出了创建new表的SQL语句。这个教程适合初学者参考。 ... [详细]
  • Nginx使用(server参数配置)
    本文介绍了Nginx的使用,重点讲解了server参数配置,包括端口号、主机名、根目录等内容。同时,还介绍了Nginx的反向代理功能。 ... [详细]
  • 本文分享了一个关于在C#中使用异步代码的问题,作者在控制台中运行时代码正常工作,但在Windows窗体中却无法正常工作。作者尝试搜索局域网上的主机,但在窗体中计数器没有减少。文章提供了相关的代码和解决思路。 ... [详细]
  • C语言注释工具及快捷键,删除C语言注释工具的实现思路
    本文介绍了C语言中注释的两种方式以及注释的作用,提供了删除C语言注释的工具实现思路,并分享了C语言中注释的快捷键操作方法。 ... [详细]
  • 计算机存储系统的层次结构及其优势
    本文介绍了计算机存储系统的层次结构,包括高速缓存、主存储器和辅助存储器三个层次。通过分层存储数据可以提高程序的执行效率。计算机存储系统的层次结构将各种不同存储容量、存取速度和价格的存储器有机组合成整体,形成可寻址存储空间比主存储器空间大得多的存储整体。由于辅助存储器容量大、价格低,使得整体存储系统的平均价格降低。同时,高速缓存的存取速度可以和CPU的工作速度相匹配,进一步提高程序执行效率。 ... [详细]
  • 《数据结构》学习笔记3——串匹配算法性能评估
    本文主要讨论串匹配算法的性能评估,包括模式匹配、字符种类数量、算法复杂度等内容。通过借助C++中的头文件和库,可以实现对串的匹配操作。其中蛮力算法的复杂度为O(m*n),通过随机取出长度为m的子串作为模式P,在文本T中进行匹配,统计平均复杂度。对于成功和失败的匹配分别进行测试,分析其平均复杂度。详情请参考相关学习资源。 ... [详细]
  • CF:3D City Model(小思维)问题解析和代码实现
    本文通过解析CF:3D City Model问题,介绍了问题的背景和要求,并给出了相应的代码实现。该问题涉及到在一个矩形的网格上建造城市的情景,每个网格单元可以作为建筑的基础,建筑由多个立方体叠加而成。文章详细讲解了问题的解决思路,并给出了相应的代码实现供读者参考。 ... [详细]
  • Go Cobra命令行工具入门教程
    本文介绍了Go语言实现的命令行工具Cobra的基本概念、安装方法和入门实践。Cobra被广泛应用于各种项目中,如Kubernetes、Hugo和Github CLI等。通过使用Cobra,我们可以快速创建命令行工具,适用于写测试脚本和各种服务的Admin CLI。文章还通过一个简单的demo演示了Cobra的使用方法。 ... [详细]
  • 开发笔记:实验7的文件读写操作
    本文介绍了使用C++的ofstream和ifstream类进行文件读写操作的方法,包括创建文件、写入文件和读取文件的过程。同时还介绍了如何判断文件是否成功打开和关闭文件的方法。通过本文的学习,读者可以了解如何在C++中进行文件读写操作。 ... [详细]
  • 本文讨论了在手机移动端如何使用HTML5和JavaScript实现视频上传并压缩视频质量,或者降低手机摄像头拍摄质量的问题。作者指出HTML5和JavaScript无法直接压缩视频,只能通过将视频传送到服务器端由后端进行压缩。对于控制相机拍摄质量,只有使用JAVA编写Android客户端才能实现压缩。此外,作者还解释了在交作业时使用zip格式压缩包导致CSS文件和图片音乐丢失的原因,并提供了解决方法。最后,作者还介绍了一个用于处理图片的类,可以实现图片剪裁处理和生成缩略图的功能。 ... [详细]
  • 本文介绍了在处理不规则数据时如何使用Python自动提取文本中的时间日期,包括使用dateutil.parser模块统一日期字符串格式和使用datefinder模块提取日期。同时,还介绍了一段使用正则表达式的代码,可以支持中文日期和一些特殊的时间识别,例如'2012年12月12日'、'3小时前'、'在2012/12/13哈哈'等。 ... [详细]
author-avatar
evon0207165
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有