现在的位置: 首页 > 综合 > 正文

三、字符串(一)

2013年08月30日 ⁄ 综合 ⁄ 共 4244字 ⁄ 字号 评论关闭

 

三、字符串

1。直接量三种写法: (1)单引号,不会替换变量,且只支持 \'   \\
两个转译字符

                                       
(2)
双引号,会进行变量替换,双引号能支持除了 \'
以外的所有转译符

                                     
                                         (3)heredoc,
比如:

                                            $string =
<<< End_Of_String

                                            haha hehe hoho....

                                            hehe

                                           End_Of_String;

                                    
其中End_Of_String可以被任意字符串替代。 heredoc会进行变量替换。字符比如单引号、双引号、空格等都会被保留

(4)  http://hi.baidu.com/kkwtre/blog/item/bdb9cc35d1674a1291ef39fd.htm                                                         

      
http://hi.baidu.com/kkwtre/blog/item/f5cdb4fa7521fcdcb58f312a.html

2echo:                  
不是函数,而是语言结构,所以不可以将它做为表达式。比如 if(echo 'test')会解析出错


3
。访问单个字符:    $str = "HAHA"; echo
$str{0};   // H


4
。删除空白符:     trim(string [,charlist]); ltrim(), rtrim();   P82

                                  <?php

                                   $string = "aaaabbbbbbaaaaaadddda";

                                   $string1 =
trim($string,"a");      //
将两边的a都去掉

                                   echo $string1;              //bbbbbbaaaaaadddd

                                   echo $string;               //不变还是aaaabbbbbbaaaaaadddda

                                   ?>

5.
改变大小写:       strtolower() strtoupper()
操作整个字符串, ucfirst()只操作字符串的第一个字母,ucwords()操作每一个单词的第一个字母

6HTML编码:      htmlentities() htmlspecialchars() html_entity_decode()

                                 http://hi.baidu.com/kkwtre/blog/item/dbc2a2c4c0239cad8326ac23.html

7。删除HTML标签:   
strip_tags($html_string, $reserve_string);
第二个参数指定要留下的标签。

8url编码          urlencode(),urldecode(),rawurlencode(),rawurldecode().

(1)
两种编码方式不同点是处理空格,前者编码为+,后者是%20

                                  (2)
中文也会被编码成%dd%dd的形式。

(3)
不要对一个完整的url使用这些函数,因为它门会转移冒号和反斜杠.应该只编码部分URL,然后在之前加上协议和域名

                                   <?php

                                         $name = "php
程序设计";

                                          $output =
urlencode($name);

                                           echo "http://www.kkwtre.com/{$output}";

       //http://www.kkwtre.com/php+%B3%CC%D0%F2%C9%E8%BC%C6

                                   ?>

9.比较字符串:     (1)
比较操作符。< , >等比较操作符的一个参数是数字时,其他参数也将被转换为数字类型,所以"php" < 1.php”被转换为0.

                                    ==比较操作符,当一个是数字,另一个是字符串时,将数字转换为字符串。

(2) strcmp()区分大小写,
strcasecmp()
不区分大小写,它在比较之前,将字符串转换为小写。

(3)strncmp(string1,string2,len),strncasecmp(string1,string2,len)只比较前面len个字符

                                  (4)
strnatcmp(),strnatcasecmp()
进行自然顺序的比较

10。子串获取:         $piece =
substr(string,start [, length]);

11.
字符串的插入删除: substr_replace(orginal_string, new_string, start [, length]).

该函数首先将original_stringstart开始删除length个字符,然后再start处插入new_string.这个函数有以下几种用法:

                                   (1).普通操作:

                                       <?php

                                               $greeting = "good morning citizen";

                                                 echo
substr_replace($greeting,"bye",5,7); //good bye citizen

                                          ?>

                                  (2).插入:无删除的插入,只需要设定length0

                                                   $greeting = "good morning citizen";

//good bye morning citizen

                                                substr_replace($greeting,"bye",5,0);

                               (3).删除:将某一段子串删除,只需将第二个参数new_string设置为""

                                                  substr_replace($greeting,"",5,7);     //good citizen

                                                   substr_replace($greeting,"",5);      //good

                                             
另外,startlength都可以是负值,表示从字符串末尾开始计数。

12。字符串的填充:     str_pad(original_string, to_length [, pad_string,STR_PAD_RIGHT | STR_PAD_RIGHT_LEFT | STR_PAD_BOTH ]);

                                     (1)
该函数将original_stringpad_string填充成to_length长的字符串,默认为STR_PAD_RIGHT,即右边

                                   (2)
如果没有参数pad_string,则默认是以空格加在字符串的右边

                                      <?php

         echo str_pad('haha',30)."end"; //haha                          end

                                         echo str_pad('haha',30,'.')."end";   //haha..........................end

                                        ?>

13.
字符串的翻转:           strrev(string);

14.
重复字符组成的字符串: str_repeat(string,count);
比如,创建一个分割符:str_repeat('-',30);

抱歉!评论已关闭.