lwcompany

功到自然成

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: :: 管理 ::

        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函数的默认删除字符

       

字 符

ASCII码

意 义

" "

32(0x20)

空格

"\t"

9(0x09)

制表符

"\n"

10(0x)

换行

"\r"

13(0x0D)

回车

"\0"

0(0x00)

空字节

"\x0B"

11(0x0B)

垂直制表符

                                  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字符串

                                                <?php

                                                  $str="I love you";

                                                  $replace="lucy";

                                                  $end=str_replace("you",$replace,$str);

                                                  echo $end; //输出"I love lucy"

                                                  ?>

                                                  对大小写敏感,还可实现多对一、多对多的替换,但无法实现一对多的替换。

                                                <?php

                                                    $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()函数可以用指定的字符串分割另一个字符串,并返回一个数组

                                             <?php

                                            $str="使用 空格 分割 字符串";

                                            array=explode(" ", $str);

                                            pint_r($array);

                                            输出Array ( [0] => 使用 [1] => 空格 [2] => 分割 [3] => 字符串 )

                                              ?>

                                      b.数组转化为字符串

                                            implode(string $glue,array $pieces)

                                             $pieces是保存要连接的字符串的数组,$glue是用于连接字符串的连接符。例如:

                                            <?php

                                                $array=array("hello","how","are","you");

                                                $str=implode(",",$array); //使用逗号作为连接符

                                                 echo $str; //输出"hello,how,are,you"

                                             ?>

                                      c.字符串的加密函数

                                              md5(); crypt(),但这个函数一旦加密后就无法转化为原来的形式。

                                  4.3实例留言薄内容处理

                                            一个留言簿,留言簿上有Email地址和用户的留言,提取客户的Email地址和留言,要求Email地址中@符号前不能有点“.”或逗号“,”。

                                           将Email地址中@符号前的内容作为用户的用户名,并将用户留言中第一人称“我”修改为“本人”。

<form name="f1" method="post" action="">
<font face="方正舒体" size=4>您的Email地址:</font><br>
<input type="text" name="Email" size=31><br>
<font face="方正舒体" size=4>您的留言:</font><br>
<textarea name="note" rows=10 cols=30></textarea>
<br><input type="submit" name="bt1" value="提交">
<input type="reset" name="bt2" value="清空">
</form>
<!--以上是留言簿表单-->
<?php
if(isset($_POST['bt1']))
{
		$Email=$_POST['Email'];						//接收Eamil地址
		$note=$_POST['note'];							//接收留言
		if(!$Email||!$note)							//判断是否取得值
			echo "<script>alert('Email地址和留言请填写完整!')</script>";
		else
		{
			$array=explode("@", $Email);				//分割Email地址
		 	if(count($array)!=2)						//如果有两个@符号则报错
				echo "<script>alert('Email地址格式错误!')</script>";
			else
		  	{
			  	$username=$array[0];					//取得@符号前的内容
			  	$netname=$array[1];					//取得@符号后的内容
			 	//如果username中含有“.”或“,”则报错
			  	if(strstr($username,".") or strstr($username,","))
			  		echo "<script>alert('Email地址格式错误!')</script>";
			  	else
			  	{
			  		$str1= htmlspecialchars("<");		//输出符号“<”
			  		$str2= htmlspecialchars(">");		//输出符号“>”
					//将留言中的“我”用“本人”替代
					$newnote=str_replace("我","本人",$note); 
					echo "<font face='黑体' size=4>";
					echo "用户". $str1. $username . $str2. "您好!&nbsp;";
					echo "您是". $netname. "网友!<br>";
					echo "<br>您的留言是:<br>&nbsp; &nbsp;&nbsp;".$newnote."<br>";
					echo "</font>";
			  	}
		   	}
		}
}
?>
posted on 2011-06-29 15:31  平渡飞扬  阅读(284)  评论(0编辑  收藏  举报