php字符串处理总结

  php字符串处理是php基础中重要的一部分,总结并整理了一下

 

  1、最简单的,字符串输出单引号和双引号的区别(定义字符串用单引号和双引号都可以)

1 $str='hello';
2 echo "str is $str";
3 echo "<br />";
4 echo 'str is $str';

看到了吧,双引号会输出字符串本身,单引号会输出字符串变量标识符

  2、字符串连接

1 $i='I';
2 $love=' Love';
3 $you=' You';
4 $hi=$i.$love.$you;    //连接字符串
5 echo $hi;

  3、去除字符串中的空格

1 $str="   string    ";
2 $str1=trim($str);    //去除两边空格
3 $str=rtrim($str);    //去除右边空格
4 $str=ltrim($str3);    //去除左边空格

  4、获取字符串长度

 1 //获取英文字符串长度
 2 $love="I love you";
 3 $len=strlen($love);
 4 echo $len;
 5 echo "<br />";
 6 //获取中文字符串的实际占用长度
 7 $love="我爱你!";
 8 $len=strlen($love);
 9 echo $len;
10 echo "<br />";
11 //获取中文汉字个数
12 $love="我爱你!";
13 $len=mb_strlen($love,"UTF8");
14 echo $len;

这里要注意统计中文字符指定编码要与本身编码一致,否则会出现乱码,默认为utf8编码不用指定也可以

  5、字符串截取

1 //英文字符串截取
2 $love="I love you";
3 echo substr($love, 2,4);
4 echo "<br />";
5 //中文字符串截取
6 $love="我爱你啊啊啊";
7 echo mb_substr($love, 0,3,'utf8');

这里同样注意编码问题,其实中文字符串截取用substr函数也可以,只是要运算一下,gbk一个汉字占2个字节,utf8一个汉字占3个,弄不好会截出半个出现乱码,用mb_substr直接数汉字个数就行了

  6、字符串查找

1 $str = 'What is your name?';
2 echo strpos($str,'name');

 

这个结果会输出13,就是要搜索的字符串第一个字符所在的位置,原字符串从0开始数

  7、

1 $str = 'I Love China';
2 $replace=str_replace('China','you',$str);
3 echo $replace;

一看就知道了,输出I Love you

  8、字符串的格式化

1 $str = '100.1';
2 $result=sprintf('%01.3f',$str);
3 echo $result;

这个结果会输出100.100,%01.3f,前面0代表没有数字则填充0,后面.3代表3位小数,f是固定格式

  9、字符串合并与分割

1 //合并字符串
2 $arr = array('Hello', 'World!');
3 $result = implode('-', $arr);
4 print_r($result);
5 echo "<br />";
6 //分隔字符串
7 $str = 'sun-moon-star';
8 $result=explode('-',$str);
9 print_r($result);

我们可以看到,分隔符可以自己指定,合并之后是一个字符串,而分割后成为了一个数组

  10、字符串转义输出

我们知道,单引号中包含双引号,双引号中包含单引号可以原样输出,但是单引号中包含单引号或者双引号中包含双引号要用\转义,保持输出不变,那么反过来呢?

1 $str = "what's this?";
2 echo addslashes($str);

这样就会输出what\'s this? 输出转义前的了

 

好了,先总结这些,方便使用的时候查询,以后用到的时候再随时更新,

 

posted @ 2015-06-21 22:00  小得盈满  阅读(358)  评论(0编辑  收藏  举报