首页 > 代码库 > 字符串的定义和处理

字符串的定义和处理

\n 回车  \r 换行   \t 回车
 
 
1.定义:
     双引号定义的:a、可以在双引号里面执行变量,例如:
                    $num = 1000;
                    $str = "it is my $num life ";
                    echo $str;
                    此时就会输出 it is my 1000 life 表明双引号中可以识别到变量,但是如果想要正常执行上述方法,在变量前后要加上空格 或者将变量写成 ${num}或者按照php中的规则使用 "." 将前后进行连接。     
                    b、可以使用转义字符
                        $str = "this is a \"string\"  test";
     
     单引号定义的:a、不能在单引号的字符串中执行变量
                   b、只能使用部分转义字符,单引号前可以使用转义字符,本身的“\”可以转义 
                    
     反引号定义的:$str = `aaaaaaa`;//不出错,但也不会输出
                    在反引号中使用的是服务器的命令,如果服务器是linux,就可以使linux命令,如果是windows,可以是windows的命令,例如 $str = "ipconifg /all";echo $str;
 
     定界符定义的:"<<<" ,$str=<<<here 
                              aaaaaaaaaaaaaaaaaaaaaaaaccccc
                              here;
                    “<<<”后面的字符串a可以任意定义,但是想要展示的内容必须要换行,且可以随意换行,最后必须在最后加上之前定义的字符串a
                    在定界符中可以执行变量,也可以执行转义字符,和双引号的区别就在于可以如意包含字符串,使用任意多的字符串
 
 
2、字符串的处理函数:
     输出函数:echo : echo "aaaa";
               print : print "aaaa"; 有返回值 1、0
               die :die("11111111111111");输出其中的程序并退出程序
               printf :printf("WWWWWWWWWWWWWWWW");
                         $num = 100.01; %s 字符串形式 %d整型
                         printf("%s",$num);
 
                         printf("%s --- %d",$num.$num);
                         
                         printf("%.2f",$num); 输出有2位小数的浮点数
 
               sprintf:并不直接输出 可以将内容赋值给某个变量
                         $str= sprintf(""%s --- %d",$num.$num");
               
               var_dump:输出变量的类型
 
               print_r():只用于输出数组
 
               ltrim():去掉字符串左空格
 
               rtrim():去掉字符串有空格
 
               trim():去掉字符串两边的空格
 
               strlen();求字符串长度
 
               strrev(),将字符串前后颠倒
 
               strtolower(),将字符串转换成小写
 
               stroupper(),将字符串转换成大写
               
               ucfirst():将字符串中第一个字符改成大写
 
               ucwords():将字符串中每个字第一个字母改成大写
 
               explode(分隔符,需要分割的字符串,返回的数组的长度):分割字符串,使用一个字符串分割另一个字符串,该函数返回的是数组
 
               implode(要联合需要使用的字符串,放有小字符串的数组):用一组较小的字符串创建一个大的字符串
               此方法的别名是join()
               var arr =array("this","is","a","demo");     
               $str= implode(",",arr); 输出的结果为 this,is,a,demo
               
               substr(string str ,int start,int length):取部分字符串:其中length可选,如果不存在length,则从start取到结尾
 
               strstr(string str母字符串,string str标识字符串)别名strchr(string str,string str):返回字符串中某字符串开始出至结束的字符串   
               strrchr(string $str, char):返回最后出现的字符到结束的字符串
               
               strpos(string 被查找的字符串,string需要查找的字符串,int pos从某个位置开始查找第一次出现的位置):寻找字符串中某字符最先出现的位置
 
               strrpos(string 被查找的字符串,string需要查找的字符串):返回最后出现的字符在字符串中出现的位置
 
               $url = "http://www.baidu.com/aa/aa/demo.php?a=1";
     $pos1 = strrpos($url,"/")+1;
     $str = substr($url,$pos1);
     $pos2 = strpos($str,"?");           
     $str = substr($str,0,$pos2);
     echo $str;  输出demo.php
     str_pad(要处理的字符串,给定处理后字符串的长度,给出想要填补的字符串,指明填补的方向):字符串的填补函数,
第四个参数有三个常量:STR_PAD_LEFT,左侧填补
                      STR_PAD_RIGHT:右侧填补
                      STR_PAD_BOTH: 两侧填补     
               $str = "www.baidu.com";
 
               $str2 = str_pad($str,30,"#",STR_PAD_LEFT);
               
  字符串的比较:
     按字节进行字符串比较strcmp() strcasecmp()不区分大小写
 
     按自然排序法进行比较strnatcmp()
 
     字符串的模糊比较 soundex()按照发音比较  similar_text()返回字符串相匹配的个数
 
     str_replace(string str1,string str2,string str3)
     将str3中的str1替换成str2
     str_replace(array arr,string str2,string str3)       
 
     str_replace(array arr1,array arr2,string str3)
 
 
     strtr(string str,string from,string to) 字符串的翻译函数,此函数是按照一个字母一个字母相对应的替换
     strtr(string str,array arr) 
          $str = "http://www.baidu.com";
          $arr = array("http"->"ftp","baidu"->"google");
          $newstr = strtr($str,$arr);          
               
      stripslashes()去除引号的转义字符   
      addslashes()    
      htmlentities()处理html的标签                 
      htmlspecialchars()  
 
      strip_tags()强制删除html标签  
 
     strip_tags(str,tags):strip_tags("<b>dd</b>","<b><i>")此代码表示对字符串中的标签除了<b><i>,其他都不展示
 
     对url处理
     parse_str()
     parse_url()
 
     url编码处理函数:
     rawurlencode();
     urlencode()
     urldecode()
 
     构造查询字符串等:
     http_build_query();