字符串处理

1、输出字符串
     1. echo
       void echo ( string arg1 [, string ...] ) 是一个语法 ,不是函数
       echo 没有返回值;
       echo 能够输出多个值,使用逗号分隔;
       
       $val = "world" ;
       echo "hello" , $val ;
 
     2. print
       int print ( string arg )  实际上不是一个函数(它是一个语言结构)
 
        print ( "hello $val" );
        print "hello world" ;
 
     3.printf() 
       功能:格式化输出字符串;
       int printf ( string format [, mixed args [, mixed ...]] )
          
         %b二进制输出         //brianry
         %d整数输出           //data
         %f浮点数输出         //float
         %s字符串输出         //string
 
         $str = "123 test" ;
         printf( "整数:%d" , $str );
         printf( "浮点数:%.2f" , $str );
         printf( "字符串:%s" , $str );
 
     4.sprintf()
 
       功能与printf相同,但不会直接输出结果;
 
       string sprintf ( string format [, mixed args [, mixed ...]] )
 
       $str = "123 test" ;
       $val = sprintf( "%d" , $str );
       echo $val ;
 
 
   2、查找与替换
 
       1. strpos ()
         int strpos ( string haystack, mixed needle [, int offset] )
 
         strpos ()函数在 haystack 中以区分大小写的方式找到 needle 第一次出现的位置;
         若是没有找到则返回FALSE;可选参数offset 指定开始查找的位置;
 
 
         echo strpos ( "Hello world!" , "wo" );
 
 
       2. stripos ()
         stripos ()与 strpos ()功能相同,只是查找时不区别大小写;
         
 
 
       3. str_replace ()
         mixed str_replace ( mixed search, mixed replace, mixed subject [, int & count ] )
 
         str_replace ()函数在subject中以区分大小写的方式搜索 search ,用replace替换找到的全部内容;
         若是没有找到search,则subject保持不变;
         若是定义了可选参数 count 则只替换subject中 count 个search
 
         $str = "test@163.com" ;
         $email = str_replace ( "@" , "(at)" , $str );
         echo $email ;
 
 
       4. str_ireplace ()
         str_ireplace ()与 str_replace ()功能相同,只是不区分大小写;
 
 
   3、截取字符串
 
       1. substr ()
       string substr ( string string, int start [, int length] )
 
       从start位置取出length长度的字符,字符串位置开始值为零;若是没有指定length,那么默认一直到字符串末尾;
 
 
       echo substr ( "Hello world" , 6);
       echo substr ( "hello world" , 6, 5);
 
 
       2. strstr ()
 
         string strstr ( string haystack, string needle )
 
         strstr () 函数搜索一个字符串在另外一个字符串中的第一次出现。该函数返回字符串的其他部分(从匹配点)。
         若是未找到所搜索的字符串,则返回false
 
         echo strstr ( "Hello world!" , "world" );
 
 
         3. stristr ()
 
         stristr ()与 strstr ()功能相同,只是不区分大小写;
 
         echo strstr ( "Hello world!" , "WORLD" );
 
 
 
 
   4、删除字符串
       1.ltrim()
 
         string ltrim ( string str [, string charlist] )
         ltrim 函数删除字符串左侧空格或其余预约义字符;
 
         若是未设置charlist参数,则删除如下字符:
         "\0"  NULL
         "\t"     制表符
         "\n"     换行
         "\x0B"   垂直制表符
         "\r"     回车
         " "      空格
 
         $str = "       Hello World!" ;
         echo ltrim( $str );
 
 
       2.rtrim()
 
         string rtrim ( string str [, string charlist] )
         rtrim 函数删除字符串右侧空格或其余预约义字符;
 
 
       3.trim()
 
         trim 函数删除字符串两侧空格或其余预约义字符;
 
 
   5、其它字符串处理函数
 
       1. strlen () 获取字符串长度
 
         $passwd = "123456" ;
           if ( strlen ( $passwd ) < 8){
             echo "密码不能少于8位" ;
           }
 
       2. strtolower () 将字符串转换为小写字母
 
           $url = "HTTP://WWW.WENGDO.COM/ " ;
           echo strtolower ( $url );
 
 
       3. strtoupper () 将字符串转换为大写字母
           $str = "中文 hello world" ;
           echo strtoupper ( $str );
 
       4. strrev () 反转字符串
           $str = "hello world" ;
           echo strrev ( $str );
 
       5. nl2br () 将字符串中换行 (\n) 转换成 HTML 换行标签 (<br>)
           $str = "hello
           world";
           echo nl2br ( $str );
 
 
       6. strip_tags () 删除字符串中HTML XML PHP 标签
         string strip_tags ( string str [, string allowable_tags] )
         可选参数 allowable_tags 指定要保留的标签;
 
         $str = "test <a href=" http: //www.163.com">163</a>";
         echo strip_tags ( $str );
 
 
     7. htmlspecialchars() 函数把一些预约义的字符转换为 HTML 实体
 
         预约义的字符是:
         & (和号)   成为  &
         " (双引号) 成为  "
         ' (单引号) 成为  '
         < (小于)   成为  <
         > (大于)   成为  >
 
         $str = "<p> 这是一个段落 </p>" ;
         echo htmlspecialchars( $str );
 
 
     练习:
 
       1.如下代码运行的结果?
         $a = "PHPlinux" ;
         $b = "PHPLinux" ;
         $c = strstr ( $a , "L" );
         $d = stristr ( $b , "l" );
         echo $c . "is" . $d ;
         A. PHP is Linux
         B. is Linux
         C. PHP is inux
         D. PHP is
 
 
       2.如下代码运行的结果为?
 
         $first = "This course is very easy!" ;
         $second = explode ( " " , $first );
         $first = implode( "," , $second );
         echo $first ;
 
         A. This,course,is,very,easy!
         B. This course is very easy!
         C. This course is very easy!,
         D. 提示错误
 
 
       3.下列哪一个函数是将字符串先后颠倒?
 
         A. strrev ();
         B. strpos ();
         C. strstr ();
         D. ucfirst();
 
       4.如下程序程序运行结果为: (选择题)
         Array([0]=>@test [1]=>com [2]=>cn)
         横线处应该使用的函数为?
         $email = "abc@test.com.cn" ;
         $str = _______( $email , ‘@’);
         $info = _______(‘.’, $str );
         ______( $info );
 
         A. strchr , split, var_dump
         B. strstr , explode , print_r
         C. strstr , explode , echo
         D. strchr , split, var_dump
 
       5. 在 str_replace (1, 2, 3)函数中1 2 3 正确的顺序为:
         A. 取代字符串, 被取代字符串, 来源字符串
         B. 被取代字符串, 取代字符串, 来源字符串
         C. 来源字符串, 取代字符串, 被取代字符串
         D. 来源字符串, 被取代字符串, 取代字符串
相关文章
相关标签/搜索