PHP字符串简明教程_第1页
PHP字符串简明教程_第2页
PHP字符串简明教程_第3页
PHP字符串简明教程_第4页
PHP字符串简明教程_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

.PHP字符串操作学习教程正像人说话一样,一般有形体(图形界面),有语言(print 字符串?),显然字符串能解释更多的东西。PHP提供了大量的字符串操作函数,功能强大,使用也比较简单以下将简单的讲述它的功能和特性。 弱类型PHP是弱类型语言,所以其它类型的数据一般可以直接应用于字符串操作函数里,而自动转换成字符串类型,进行处理,如:echo substr(1234567, 1, 3); 和echo substr(123456,1, 3); 是一样的定义一般用双引号或单引号标识一个字符串。比如$str = i love u; $str = i love u; 它者两者是有一些区别的。后者将一切单引号的内容都会当作字符处理;前者则不然。比如$test = iwind; $str = i love $test; $str1 = i love $test; echo $str; /将得到 i love iwind echo $str1; /将得到 i love $test 同样的以下两个例子的行为也不一样的:echo i love test; / 将得到 i love est,已经将t视为转义 echo i love test; / 将得到 i love test 从而可以简单认为双引号里的内容是经过“解释”过的,单引号的是“所见即所得”的(特殊地,会被认作一个)。显而易见,双引号形式的更为灵活一些,当然单引号会适用于一些特殊的场合,这里就不作阐述了。输出PHP里的输出最常用的是echo,print.两者都不是真正的函数,而是语言构造,所以调用时不必用双括号(比如echo(test);print(test).在输出的时候两者都可以实现赋值:echo $str=test; /一方面输出test,一方面把test赋给字符串变量 $str print $str=test; 两者除了名字不一样外,还是有其它区别的。print具有返回值,一直返回1,而echo没有,所以echo比print要快一些:$return = print test; echo $return; / 输出1 也正因为这个原因,print能应用于复合语句中,而echo不能:isset($str) or print str 变量未定义; / 将输出str 变量未定义 isset($str) or echo str 变量未定义;/ 将提示分析错误 echo一次可输出多个字符串,而print则不可以:echo i ,love ,iwind; / 将输出 i love iwind print i ,love ,iwind; / 将提示错误echo,print还可以输出被称作“文档句法”的字符串,句法如:echo 标签名称 . 字符串内容 . 标签名称; 比如 echo 0), 比较的是 b和Bstrcasecmp用于不区分大小写的字符串比较:echo strcasecmp(abcdd, aBcde); / 返回 -1 (0), 比较了 abc 和 aBc strncasecmp用于不区分大小写的比较字符串的一部分,从字符串的开头开始比较,第三个参数,为要比较的长度:echo strncasecmp(abcdd, aBcde, 3); / 返回 0, 比较了 abc 和 aBc, 由于不区分大小写,所以两者是相同的。 还有一种情况是单单比较字符串大小,达不到我们预定的要求,比如照常理 10.gif 会比 5.gif 大,但如果应用上面几个函数,就会返回 -1,即表示 10.gif比5.gif,针对这种情况,PHP提供了两个自然对比的函数strnatcmp,strnatcasecmp:echo strnatcmp(10.gif, 5.gif); / 返回 1 (0) echo strnatcasecmp(10.GIF, 5.gif); / 返回 1 (0) 替换替换的意义在于将一个字符串的一部分进行改变,使之成为别外一个新的字符串,以满足新的要求。PHP里通常用str_replace(要替换的内容, 要取代原内容的字符串, 原字符串)进行替换。echo str_replace(iwind, kiki, i love iwind, iwind said); / 将输出 i love kiki, kiki said 即将 原字符串中的所有iwind都替换成了kiki.str_replace是大小写敏感的,所以对你不能设想用 str_replace(IWIND, kiki,.)替换原字符串中的iwind.str_replace还可以实现多对一,多对多的替换,但无法实现一对多的替换:echo str_replace(array(iwind, kiki), people, i love kiki, iwind said); 将会输出i love people, people said第一个参数中的array(iwind, kiki)都被替换成了peopleecho str_replace(array(iwind, kiki), array(gentle man, ladies), i love kiki, iwind said); 输出 i love ladies, gentle man said 。也就是说第一个数组中的元素被第二个数组中的相对应的元素替换掉了,如果有一个数组比另一个数组元素数要少,那么不足的都会当作空来处理。与此有些类似的是strtr,此外,PHP还提供了substr_replace,实现替换一部分的字符串。语法如下:substr_replace (原字符串, 要替代的字符串, 开始替换的位置 , 替换的长度)其中,开始替换的位置从0开始计算,应该小于原字符串的长度。要替换的长度是可选的。echo substr_replace(abcdefgh, DEF, 3); / 将输出 abcDEF echo substr_replace(abcdefgh, DEF, 3, 2); / 将输出 abcDEFfgh 第一个例子中,从第三个位置(即d)开始替换,从而把 defgh都替换成了“DEF”第二个例子中,也是从第三个位置(即d)开始替换,但只能替换2个长度,即到e,所以就把de替换成了DEF.PHP还提供了preg_replace,preg_replace_callback,ereg_replace,eregi_replace等函数应用正则表达式来完成字符串替换,用法请参考手册。查找与匹配PHP里用于查找或者匹配或者定位的函数非常多,它们都有不同的意义。这里只讲述用得比较多的strstr,stristr.后者与前者的功能,返回值都一样,只是不区分大小写。strstr(母字符串, 子字符串)用来查找子字符串在母字符串中第一次出现的位置,并返回母字符串中从子字符串开始到母字符串结束的部分。比如echo strstr(abcdefg, e); /将输出 efg 如果找不到子字符串,则返回空。因为可以用来判断一个字符串中是否含有另外一个字符串:$needle = iwind; $str = i love iwind; if (strstr($str, $needle) echo 里面有 iwind; else echo 里面没有 iwind; 将会输出里面有 iwindHTML相关1,htmlspecialchars($string)这是它的最简单用法,将字符串中的一些特殊字符(顾名思义)&,转换成它们对应的HTML实体形式:$str = i love kiki, iwind said.; echo htmlspecialchars($str); 将会输出i love kiki, iwind said.2,htmlentities($string)将所有能转换成实体形式的字符都转换成实体形式。3,html_entity_decod

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论