第4章 数据处理-php字符串的处理-郑阿奇(续)
发布时间:2020-12-13 05:56:35 所属栏目:PHP教程 来源:网络整理
导读:1.字符串的定义与显示 定义:通过””,''来标志 显示:echo()和print(),但print()具有返回值值,1,而echo()没有,但echo比print()要快,print()能用在复合语句中。 2.字符串的格式化 printf(string $format[,mixed$args]) 第一参数是格式字符串,$args是要替
1.字符串的定义与显示 定义:通过””,''来标志 显示:echo()和print(),但print()具有返回值值,1,而echo()没有,但echo比print()要快,print()能用在复合语句中。 2.字符串的格式化 printf(string $format[,mixed$args]) 第一参数是格式字符串,$args是要替换进来的值,prinf(“%d”,$num); 说明,如果想打印一个”%”,必须用”%”,浮点数f,八进制用”0” 3.常用的字符串函数 1.计算字符串的长度 strlen(string $string),说明,1个英文长度1个字符,1个汉字长度为2个字符,空格也算一个字符。 2.将字符串改变大小写 转为小写:strtolower() 转为大写:strtoupper() 将第一个字符大写: ucfirst() 将每个单词的第一个字母大写 ucwords() 3.字符串裁剪。 当一个字符串的首尾有多余的空白字符,如空格、制表符等可以用 string trim(string $str[,string $charlist]) string rtrim(string $str[sring $charlist]) string itrim(string $str[,string $charlist]) 表4.1 trim、itrim、rtrim函数的默认删除字符
4.字符串的查找 string strstr(string $a,string $b) 说明:strstr()函数用于查找字符串指针$b在字符串$a中出现的位置, 并返回$a字符串中从$b开始到$a字符串结束处的字符串。 如果没有返回值,即没有发现$b,则返回FALSE。strstr()函数还有一个同名函数strchr()。 5.字符串与ASCII码 4.字符串的比较 比较函数有 strcmp() //区分大小写 strcasecmp()//不区分大小写 strncmp() //比较部分 strncasecmp()//不区分大小写,比较部分 5.字符串的替换 str_replace(search,replace,subject) 说明使用新的字符串replace替换字符串subject中的search字符串 $str="I love you"; $replace="lucy"; $end=str_replace("you",$replace,$str); echo $end; //输出"I love lucy" ?> 对大小写敏感,还可实现多对一、多对多的替换,但无法实现一对多的替换。 $str="What Is Your Name"; $array=array("a","o","A","O","e"); echo str_replace($array,"",$str); //多对一的替换,输出"Wht Is Yur Nm" $array1=array("a","b","c"); $array2=array("d","e","f"); echo str_replace($array1,$array2,"abcdef"); //多对多的替换,输出"defdef" ?> substr_replace 替换字符串的一部分。 6.字符串与HTML 略 7.其它字符串函数 1.字符串与数组 a.字符串转化为数组 explode()函数可以用指定的字符串分割另一个字符串,并返回一个数组 $str="使用 空格 分割 字符串"; array=explode(" ",$str); pint_r($array); 输出Array ( [0] => 使用 [1] => 空格 [2] => 分割 [3] => 字符串 ) ?> b.数组转化为字符串 implode(string $glue,array $pieces) $pieces是保存要连接的字符串的数组,$glue是用于连接字符串的连接符。例如: $array=array("hello","how","are","you"); $str=implode(",",$array); //使用逗号作为连接符 echo $str; //输出"hello,how,are,you" ?> c.字符串的加密函数 md5(); crypt(),但这个函数一旦加密后就无法转化为原来的形式。 4.3实例留言薄内容处理 一个留言簿,留言簿上有Email地址和用户的留言,提取客户的Email地址和留言,要求Email地址中@符号前不能有点“.”或逗号“,”。 将Email地址中@符号前的内容作为用户的用户名,并将用户留言中第一人称“我”修改为“本人”。 代码如下: if(isset($_POST['bt1'])) { $Email=$_POST['Email']; //接收Eamil地址 $note=$_POST['note']; //接收留言 if(!$Email||!$note) //判断是否取得值 echo ""; else { $array=explode("@",$Email); //分割Email地址 if(count($array)!=2) //如果有两个@符号则报错 echo ""; else { $username=$array[0]; //取得@符号前的内容 $netname=$array[1]; //取得@符号后的内容 //如果username中含有“.”或“,”则报错 if(strstr($username,".") or strstr($username,")) echo ""; else { $str1= htmlspecialchars("<"); //输出符号“<” $str2= htmlspecialchars(">"); //输出符号“>” //将留言中的“我”用“本人”替代 $newnote=str_replace("我","本人",$note); echo ""; echo "用户". $str1. $username . $str2. "您好!"; echo "您是". $netname. "网友! "; echo " 您的留言是: ".$newnote." "; echo ""; } } } } ?> (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |