收藏 分享(赏)

PHP字符串简明教育资料.doc

上传人:还是太帅 文档编号:9087027 上传时间:2019-07-23 格式:DOC 页数:8 大小:68.50KB
下载 相关 举报
PHP字符串简明教育资料.doc_第1页
第1页 / 共8页
PHP字符串简明教育资料.doc_第2页
第2页 / 共8页
PHP字符串简明教育资料.doc_第3页
第3页 / 共8页
PHP字符串简明教育资料.doc_第4页
第4页 / 共8页
PHP字符串简明教育资料.doc_第5页
第5页 / 共8页
点击查看更多>>
资源描述

1、PHP 字符串操作学习教程正像人说话一样,一般有形体(图形界面),有语言(print 字符串?),显然字符串能解释更多的东西。PHP 提供了大量的字符串操作函数,功能强大,使用也比较简单以下将简单的讲述它的功能和特性。 弱类型PHP 是弱类型语言,所以其它类型的数据一般可以直接应用于字符串操作函数里,而自动转换成字符串类型,进行处理,如:echo substr(“1234567“, 1, 3); 和echo substr(123456,1, 3); 是一样的定义一般用双引号或单引号标识一个字符串。比如$str = “i love u“; $str = i love u; 它者两者是有一些区别的

2、。后者将一切单引号的内容都会当作字符处理;前者则不然。比如$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 从而可以简单认为双引号里的内容是经过“解释”过的,单引号的是“所见即所得”的(特殊地,会被认作一个

3、)。显而易见,双引号形式的更为灵活一些,当然单引号会适用于一些特殊的场合,这里就不作阐述了。输出PHP 里的输出最常用的是 echo,print.两者都不是真正的函数,而是语言构造,所以调用时不必用双括号(比如 echo(“test“);print(“test“).在输出的时候两者都可以实现赋值:echo $str=“test“; /一方面输出 test,一方面把“test“赋给字符串变量 $str print $str=“test“; 两者除了名字不一样外,还是有其它区别的。print 具有返回值,一直返回 1,而 echo没有,所以 echo比 print要快一些:$return = pr

4、int “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还可以输出被称作“文档句法”的字符串,句

5、法如:echo 0), 比较的是 “b“和“B“strcasecmp用于不区分大小写的字符串比较:echo strcasecmp(“abcdd“, “aBcde“); / 返回 -1 (0), 比较了 abc 和 aBc strncasecmp用于不区分大小写的比较字符串的一部分,从字符串的开头开始比较,第三个参数,为要比较的长度:echo strncasecmp(“abcdd“, “aBcde“, 3); / 返回 0, 比较了 abc 和 aBc, 由于不区分大小写,所以两者是相同的。 还有一种情况是单单比较字符串大小,达不到我们预定的要求,比如照常理 10.gif 会比 5.gif 大,

6、但如果应用上面几个函数,就会返回 -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

7、(“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“);

8、 将会输出i love people, people said第一个参数中的 array(“iwind“, “kiki“)都被替换成了“people“echo str_replace(array(“iwind“, “kiki“), array(“gentle man“, “ladies“), “i love kiki, iwind said“); 输出 i love ladies, gentle man said 。也就是说第一个数组中的元素被第二个数组中的相对应的元素替换掉了,如果有一个数组比另一个数组元素数要少,那么不足的都会当作空来处理。与此有些类似的是 strtr,此外,PHP 还提供

9、了 substr_replace,实现替换一部分的字符串。语法如下:substr_replace (原字符串, 要替代的字符串, 开始替换的位置 , 替换的长度)其中,开始替换的位置从 0开始计算,应该小于原字符串的长度。要替换的长度是可选的。echo substr_replace(“abcdefgh“, “DEF“, 3); / 将输出 “abcDEF“ echo substr_replace(“abcdefgh“, “DEF“, 3, 2); / 将输出 “abcDEFfgh“ 第一个例子中,从第三个位置(即“d“)开始替换,从而把 “defgh“都替换成了“DEF”第二个例子中,也是从第

10、三个位置(即“d“)开始替换,但只能替换 2个长度,即到 e,所以就把“de“替换成了“DEF“.PHP 还提供了preg_replace,preg_replace_callback,ereg_replace,eregi_replace等函数应用正则表达式来完成字符串替换,用法请参考手册。查找与匹配PHP 里用于查找或者匹配或者定位的函数非常多,它们都有不同的意义。这里只讲述用得比较多的 strstr,stristr.后者与前者的功能,返回值都一样,只是不区分大小写。strstr(“母字符串“, “子字符串“)用来查找子字符串在母字符串中第一次出现的位置,并返回母字符串中从子字符串开始到母字符

11、串结束的部分。比如echo strstr(“abcdefg“, “e“); /将输出 “efg“ 如果找不到子字符串,则返回空。因为可以用来判断一个字符串中是否含有另外一个字符串:$needle = “iwind“; $str = “i love iwind“; if (strstr($str, $needle) echo “里面有 iwind“; else echo “里面没有 iwind“; 将会输出“里面有 iwind“HTML 相关1,htmlspecialchars($string)这是它的最简单用法,将字符串中的一些特殊字符(顾名思义) echo htmlspecialchars($str); 将会输出i love kiki, iwind said.2,htmlentities($string)将所有能转换成实体形式的字符都转换成实体形式。3,html_entity_decode($string);PHP4.3.0 以后加入的具有与 htmlentities($string)相反的功能。4,nl2br($string)将字符串中所有换行符转变成 + 换行符。如:$str = “i love kiki,n iwind said.“; echo nl2br($str); 将会输出i love kiki,iwind said.

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 实用文档 > 往来文书

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报