1. 字符串相关函数
函数 | 功能 | 示例 |
---|---|---|
strlen(string) | 返回字符串的长度(中文算两个字符) | strlen(“abc8”),返回4 |
trim(string) | 去掉字符串两端的空格 | strlen(" abcd* “)返回"abc*” |
ltrim(string)、rtrim(string) | 去掉字符串左边或右边的空格 | |
substr(string,start,[length]) | 从字符串的第start个字符开始,取长为length的子串。如果省略length,表示取到字符串的结尾,如果start为负数表示从末尾开始截取,如果length为负数,则表示取到倒数第length字符 | |
str_replace(find,replace,string.[&count]) | 替换字符串中的部分字符,将find替换为replace,如果有参数count,还可获取替换的数量 | str_replace(" AB “,” * “,” ABCabc"),返回" *Cabc" |
strtr(string,find,replace) | 替换字符串中的部分字符,将find替换为replace,如果find和replace长度不同,则只替换两者中较小者 | strtr(“Hilla Warld”,“ial”,“eo”)返回"Hello World" (ia替换成eo) |
substr_replace(string,replace,start,[length] | 从字符串的第start个字符开始,用replace替换长度为length的字符,若省略length,则替换到结尾 | substr_replace(“ABCabc”,"",3)返回"ABC * " ;substr_replace(ABCabc","",3,2)返回"ABC*c); |
strtok(string,split) | 根据split指定的字符串把字符串分隔为更小的字符串 | |
strpos(string,find,[start] | 返回子串find在字符串string中第一次出现的位置,如果未找到该子串,则返回false,如果有start参数,表示开始搜索的位置 | |
strstr(string,search) | 返回从search开始,字符串的其余部分,如果未找到所搜索的字符串,则返回false | strstr(" ABCabc",“ab”),返回"abc" |
strcmp(str1,str2) | 返回两个字符串比较的结果,str1小于str2,比较结果为-1,str1等于str2,比较结果为0,str1大于str2,比较结果为1 | |
strrev(string) | 翻转字符串 | |
str_repeat(string,repeat) | 把字符串重复指定的次数 | str_repeat(".",6) ,返回". . . . . ." |
nl2br(string) | 把string中的\n转换为换行标记<br/> | nl2br(“a\nb”),返回"a<br/>b" |
strip_tags(string,[allow]) | 去除字符串中的HTML、XML 、PHP标记 | strip_tags(“Hello <b> world! </b>”)返回 “Hello world” |
chr(number) | 返回与指定ASCII码对应的字符 | chr(13) 返回回车符,chr(0x52) 返回“R” |
ord(string) | 返回字符串中第一个字符的值 | ord(“h”);返回104 |
上述这些字符串函数都严格区分大小写。如果希望不区分大小写则可使用:
strops() >> stripos() ;
strstr() = strchr() >> stristr()
str_replace() >> str_ireplace()
strcmp() >> strcasecmp()
字符串大小写转换函数:
strtolower($str) : 字符串转换为小写;
strtoupper($str) : 字符串转换为大写;
ucfirst($str) : 将函数参数的第一个字符转换为大写
ucwords($str) : 将每个单词的首字母转换为大写
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>PHP内置函数</title>
</head>
<?php
echo "字符串内置函数简单实例<br/>";
$t1 = strlen("abc8"); echo $t1."<br>";
$t2 = str_replace("AB","*","ABCabc"); echo $t2."<br>";
$t3 = str_repeat(".",6); echo $t3."<br>";
$t4 = nl2br("a\nb"); echo $t4."<br/>";
$t5 = strip_tags("Hello <b> world! </b>"); echo $t5."<br/>";
$t6 = chr(0x52); echo $t6."<br/><br/>";
echo "对查询关键字描红加粗(str_ireplace()函数的应用<br/>";
$content = "《web标准网页设计与ASP》";
$find = "网页设计";
$out = str_ireplace($find,"<b style = 'color:red'>$find</b>",$content);
echo $out."<br/><br/>";
echo "对用户输入的字符串进行检查并过滤掉非法字符(strpos()函数的应用<br/>";
$Patternstr = "黄|黑|走私|发票|枪支|东突";
$Pattern = explode("|",$Patternstr);
print_r($Pattern);
$inputstr = "黑色黄色东突枪支弹药走私物品增值发票";
echo '<br>'.$inputstr;
for($i = 0;$i<count($Pattern);$i++){
if(strpos($inputstr,$Pattern[$i])!== false){
$outstr = str_replace($Pattern[$i],'c',$inputstr);
$inputstr = $outstr;
//echo '<br>'.$inputstr;
}
}
echo '<br>'.$inputstr."<br/>";
echo "<br/>用字符串函数来判断E-mail或IP地址的格式是否正确<br/>";
$email = "kabule@163.com";
if(strpos($email,"@") && strpos($email,".") && strpos($email,"@")<strpos($email,"."))
echo "Email 格式正确<br/>";
$IP = "59.51.24.54";
$arr = explode(".",$IP);
if(count($arr) == 4)
echo "IP 格式正确,IP前两位为 $arr[0].$arr[1].*.*<br/>";
?>
<body>
</body>
</html>
输出界面: