首页 > 代码库 > PHP中字符串的处理

PHP中字符串的处理

在C语言中字符串是作为字节数组处理的。在Java语言中字符串是作为对象处理的。

而php则把字符串作为基本数据类型来处理。

通常对字符串的处理涉及字符串的格式化。字符串的分割和连接、字符串的比较、以及字符串的查找、匹配和替换。

 

<?php   
    echo substr( "1234567", 2, 4 );  //将字串用函数substr()处理,输出子字符串 345
    echo substr( 123456, 2, 4 );     //将整型用字串函数处理,输出同样是字符串 345
    echo hello;                      //会先找hello常量,找不到就会将常名看作是字符串使用 
   
    $str = "lamp";          //声明一个字符串$str,值为lamp
    echo $str."<br>";       //将字符串看作是一个连续的实体,一起输出 lamp
    //以下将字符串看作字符集合,按数组方式一个个字符输出
    echo $str{0};                   //输出字符串$str中第一个字符 l
    echo $str[1];                   //输出字符串$str中第二个字符 a,[ ] 也可以,不过已过时
    echo $str{2};                   //输出字符串$str中第三个字符 m
    echo $str{3};                   //输出字符串$str中第四个字符 p
    echo $str{0}.$str{1};           //输出字符串$str中前两个字符 la
    
    $last = $str{strlen($str)-1};   //获取字符串$str中最后一个字符 p
    $str{strlen($str)-1} = ‘e‘;     //修改字符串$str中最后一个字符串,字符串为lame
    
    $str{1} = "nginx";   //使用一个字串去修改另一字串中的第2个字符,结果:lnmp;

 

<?php
    //声明一个关联数组,数组名为$lamp, 成员有4个
    $lamp = array( ‘os‘=>‘Linux‘, ‘webserver‘ =>‘Apache‘, ‘db‘=>‘MySQL‘, ‘language‘=>‘php‘ );
    
    //可以解析,双引号中对于数组索引,右方括号(])标志着索引的结束,
    //但是注意:不要在[]中使用引号,否则会在引号处结束
    echo "A OS is $lamp[os].";
    
    //不能解析,如果在对关联数组下标使用引号就必须使用花括号,否则将出错
    echo "A OS is $lamp[‘os‘].";
    
    //可以解析,如果在对关联数组下标使用引号就必须使用花括号,否则将出错
    echo "A OS is {$lamp[‘os‘]}.";
    
    //可以解析,注意PHP将数组下标看作常量名,并且常不存在时将常量名称转为了字中,效率低
    echo "A OS is {$lamp[os]}.";
    
    echo "This square is $square->width meters broad."; //可以解析,对象中的成员也可以解析
    echo "This square is $square->width00 centimeters broad."; //不能解析,可以使用花括号解决
    
    echo "This square is {$square->width}00 centimeters broad."; //可以解析, 使用花括号解决

 

 

技术分享

PHP中字符串的处理