PHP的字符串函数
1、字符串的连接 字符串可以使用字符串连接符(.)来连接 常见的用途是建立大块的HTML字串代码,赋值号 (=) 连接符 (.) 可以被简写合并为 (.=) 符号 2、在字符串中使用变量 这个功能让你无须使用连接符号来粘和大量的简单字符串 单引号串和双引号串在PHP中的处理是不相同的。双引号串中的内容可以被解释而且替换,而单引号串中的内容总被认为是普通字符。例如: $foo = 2; 为避免这些字串使用中的潜在问题,我们通常把复杂的变量从字串中分离开来,就像这样: 还有一种办法是将复杂变量用花括号括起来,语法分析器就能正确辨认了: 3字符串的长度 长度 4、字符串的分隔与连接 与此相反的,implode和join则能把一个数组结合成一个字符串,他们是具有完全相同功能的函数。 5、字符串的裁剪 trim去除一个字符串的两端空格, rtrim去除一个字符串的尾部空格, ltrim去除一个字符串的首部空格等函数 有时还会看到有人使用chop这个函数,其实它是rtrim的同义函数 6、字符串大小写转换 7、字符串的比较 PHP里还有这样一组用于字符串比较的函数:strcmp,strcasecmp,strncasecmp(), strncmp(),它们都是如果前者比后者大,则返回大于0的整数;如果前者比后者小,则返回小于0的整数;如果两者相等,则返回0.它们比较的原理与 其它语言的规则都是一样的。 strcasecmp用于不区分大小写的字符串比较: strncmp用于比较字符串的一部分,从字符串的开头开始比较,第三个参数,为要比较的长度: strncasecmp用于不区分大小写的比较字符串的一部分,从字符串的开头开始比较,第三个参数,为要比较的长度: 还有一种情况是单单比较字符串大小,达不到我们预定的要求,比如照常理 10.gif 会比 5.gif大,但如果应用上面几个函数,就会返回 -1,即表示 10.gif比5.gif,针对这种情况,PHP提供了两个自然对比的函数strnatcmp,strnatcasecmp: 8、字符串的替换 str_replace是大小写敏感的,所以对你不能设想用 str_replace("Iwind", "kiki",...)替换原字符串中的"iwind". str_replace还可以实现多对一,多对多的替换,但无法实现一对多的替换: echo str_replace(array("iwind", "kiki"), array("gentle man", "ladies"), "i love kiki, iwind said"); 与此有些类似的是strtr,用法请参阅手册,它们的比较请参阅http://diary.4kiki.net/index.php?action=info&id=372 . 此外,PHP还提供了substr_replace,实现替换一部分的字符串。语法如下: PHP还提供了preg_replace,preg_replace_callback,ereg_replace,eregi_replace等函数应用正则表达式来完成字符串替换 9、字符串的查找与匹配 strstr,stristr.后者与前者的功能,返回值都一样,只是不区分大小写。 HTML相关 2,htmlentities($string) 3,html_entity_decode($string); 4,nl2br($string) 10、字符串的加密 PHP5给md5加了第二个参数,从而使它可以输出16位的加密后的字符串 11、查找字符位置函数: 12、加空格函数 13、数据库相关函数 字符串转换为\',",\\。 get_magic_quotes_gpc()检测是否打开magic_quotes_gpc stripslashes() 去除字符串中的反斜杠 13、快速创建字符串数组的函数range() 比如range()函数可以快速创建从1到9的数字数组: <?php 当然,使用range(9,1)则创建了9到1的数字数组。同时,range()还可以创建从a到z 的字符数组: <?php //foreach是一种遍历数组的简便方法,foreach 仅能用于数组,当试图将其用于其它数据类型或者一个未初始化的变量时会产生错误,它有两种格式: foreach (array_ as $value) statementforeach (array_ as $key => $value) statement 使用字符数组时注意大小写,比如range(A,z)和range(a,Z)是不一样的。 range()函数还具有第三个参数,该参数的作用是设定步长,比如range(1,9,3)创建的数组元素是:1、4、7 14、常规字符串数组的排序 一般数组中的各元素均以字符或数字表现的,所以可对数组元素进行升序排列,该功能函数为sort()。比如: <?php 升序排序后的数组元素显示为 birth name nation sex,当然,sort()函数是区分字母大小写的(字母从大到小的顺序是:A…Z…a…z) Sort()函数还具有第二参数,用来说明升序的规则是用来比较数字还是字符串的。比如: <?php echo "<br />---按字符升序排序---<br />"; SORT_NUMERIC和SORT_STRING用来声明按数字或字符的升序排列。如果按照数字升序排列是:3,26;但如果按照字符升序排列则是:26,3了。 PHP中除了升序函数以外,还有降序或称反向排列的函数,就是rsort()函数,比如: $num1=range(1,9); 15、关联数组的排序 PHP除了支持数字索引数组以外,还支持相关数组。比如如下数组就是一个相关(关联)数组: $peoples=array('xm'=>'name','xb'=>'sex','mz'=>'nation','cs'=>'birth'); 使用sort($peoples)默认即是按照元素定义值的升序排序,在关联数组中可使用asort()函数表示按元素值升序排序,关联数组中最主要的则是可按照关键字(如xm、xb、mz等)的升序排序,该方法是用函数ksort()函数。 <?php echo "<br />--按元素值升序排列--<br />"; echo "<br />--按关键字升序排列--<br />"; 16、数组元素随机排序 PHP中使用shuffle()函数将数组元素进行随机的重新排序,每次都会显示不同的排序组合,比如: <?php foreach ($fer as $mychrs) 17、PHP数组按原顺序反向排序 PHP中可使用array_reverse()函数将数组元素按原顺序反向排序。比如: <?php $fer=array_reverse($fer); //将数组内元素按原顺序反向排序 output: cnbruce cnrose cnjames cnanne 注意这里的 $fer=array_reverse($fer); 在此之前的任何排序函数均只是声明引用,并没有对原有数组进行重新定义,但当我调试该函数时则需要重新定义。这是因为array_reverse()是返 回原数组修改后的副本,如果不需要原有数组,可对原数组重新定义达到覆盖的目的,否则就另外定义数组保存副本,比 如:$fer_bak=array_reverse($fer_bak); |
PHP的字符串函数的更多相关文章
- ThinkPHP 模板substr的截取字符串函数
ThinkPHP 模板substr的截取字符串函数在Common/function.php加上以下代码 /** ** 截取中文字符串 **/ function msubstr($str, $start ...
- SQL字符串函数
LEN() :计算字符串长度(字符的个数.)datalength();//计算字符串所占用的字节数,不属于字符串函数.测试varchar变量与nvarchar变量存储字符串a的区别.见备注1.LOWE ...
- Python3中的字符串函数学习总结
这篇文章主要介绍了Python3中的字符串函数学习总结,本文讲解了格式化类方法.查找 & 替换类方法.拆分 & 组合类方法等内容,需要的朋友可以参考下. Sequence Types ...
- TSQL 字符串函数:截断和查找
字符串截断函数是指:Stuff 和 SubString,字符串查找函数是:CharIndex 和 PatIndex 一,SubString 截取子串 最常用的字符串函数,用于截取特定长度的子串. SU ...
- c#编程基础之字符串函数
c#常用的字符串函数 例一: 获取字符串的大小写函数 ToLower():得到字符串的小写形式 ToUpper():得到字符串的大写形式 注意: 字符串时不可变的,所以这些函数都不会直接改变字符串的内 ...
- SQLSERVER常见系统函数之字符串函数(一)
好久没有写博客了,这段时间准备写一下字符串函数 QQ群: 499092562:欢迎交流 字符串函数: 1.LEN(需要获取长度的字符串) 返回:字符串的长度 示例: SELECT LEN('小搬运工很 ...
- python笔记-字符串函数总结
字符串函数: chr() 数字转ASCII chr(96)="a" ord() ASCII转数字 ord("a")=96 isspace() 判断是否为空格 s ...
- Sql Server函数全解<一>字符串函数
阅读目录 1.ASCII()函数 2.CHAR()函数 3.LEFT()函数 4.RIGHT()函数 5.LTRIM()函数 6.RTRIM()函数 7.STR()函数 8.字符串逆序的函数REVER ...
- Sql Server系列:字符串函数
字符串函数用于对字符和二进制字符串进行各种操作,大多数字符串函数只能作用于char.nchar.varchar和nvarchar数据类型.字符串函数可以用在SELECT或者WHERE语句中. 1. A ...
- 前端学PHP之字符串函数
× 目录 [1]特点 [2]输出 [3]空格[4]大小写[5]HTML[6]格式化[7]比较 前面的话 字符串的处理和分析在任何编程语言中都是一个重要的基础,往往是简单而重要的.信息的分类.解析.存储 ...
随机推荐
- tomcat虚拟目录映射网络共享目录
<Host name="localhost" debug="0" appBase="webapps" unpackWARs=" ...
- ue4标签测试与总结(UPROPERTY)
学习UE4框架中的标签,本篇是总结成员变量标签UPROPERTY. 引擎版本:4.12.5 前期准备: 1.新建项目,C++空模板,新建C++类,继承AActor,名称MyActor. 使用TestA ...
- long l=88;这个表达式是正确的,因为long比int类型大,会发生自动转换
long l=88;这个表达式是正确的,因为long比int类型大,会发生自动转换
- Python自动化 【第十二篇】:Python进阶-MySQL和ORM
本节内容 数据库介绍 mysql 数据库安装使用 mysql管理 mysql 数据类型 常用mysql命令 创建数据库 外键 增删改查表 权限 事务 索引 python 操作mysql ORM sql ...
- 关于C/S模式开发的学习笔记
当今的现状,感觉是B/S大为盛行,C/S的学习者很少,就那我们学校来看,三年多来,教的.用的最多的都是B/S,在刚刚确定下来的毕设课题中,大约四分之三都是web结合安卓开发的系统.C/S的学习着很少, ...
- elasticsearch5.0集群+kibana5.0+head插件插件的安装
elasticsearch5.0集群+kibana5.0+head插件插件的安装 es集群的规划: 两台16核64G内存的服务器: yunva_etl_es1 ip:1.1.1.1 u04es01. ...
- MySQL的索引类型和左前缀索引
1.索引类型: 1.1B-tree索引: 注:名叫btree索引,大的方面看,都用的是平衡树,但具体的实现上,各引擎稍有不同,比如,严格的说,NDB引擎,使用的是T-tree,但是在MyISAM,In ...
- REST及RESTful的实现
什么是REST? REST (REpresentation State Transfer) 描述了一个架构样式的网络系统,比如 web 应用程序.它首次出现在 2000 年 Roy Fielding ...
- 定制自己的linux系统
算是总结式文档,以备后忘 先说一下背景,一开始我就知道有这个任务,同时我自己也非常感兴趣,打算去研究研究 于是才同意接这个任务,但是我的原意是从头开始搭建系统,也就是lfs 但接到任务后,由于种种原因 ...
- No permission to write APN settings: Neither user *** nor current process has android.permission.WRITE_APN_SETTINGS.
在ICS40以前的版本中,如果程序需要设置APN,只需要在AndroidManifest文件中声明这个权限即可.在40的机器上运行则会抛出以下异常:java.lang.SecurityExceptio ...