php 字符串

字符串

  查找 strpos()

  截取 substr()

  分割 str_split() 返回数组,可以指定长度

  

Srint 字符串
    单引号
        单引号内特殊字符和变量不会被解析
            <?php
            $a = 'Hello';
            echo '$a \n World';//$a \n World

    双引号
        双引号内的特殊字符和变量会被解析。
            ```php
            <?php
            $a = 'Hello';
            /**
             * Hello
             *   World
             */
            echo "$a \n World";

    Heredoc
        Heredoc 类似与双引号,内部转义字符和变量可以被解析,句法结构为
            <<<EOT
            字符串
           EOT;

        其中 EOT 为标识符,可以自定义,但是首尾标识符必须相同。开始标识符 EOT 后需换行,结束标识符 EOT 必须独占一行,且前面不许有空格。

$a ='Hello' ;
echo <<<EOT
$a Hello
EOT;


    Nowdoc
        Nowdoc 类似于单引号,无法解析转移字符和变量。句法结构类似 Heredoc,但是需要在开始标识符加上单引号。          

<?php
$a ='Hello' ;
echo <<<'EOD'//和 Heredoc 不同点
$a Hello
EOD;    

 

    $str = 'mysteriousKiller';
    echo strpos($str,'ll').'<br/>';

    $str1 = substr($str,2);
    echo $str1.'<br/>';

    $re = str_split($str);
    print_r($re);
// 空格作为分割点
    $rel = explode(' ',$str);
    print_r($rel);

    // 拼接
    $s = "$str.java";
    echo $s;

 --------------------------------------

字符串转义

  转义的含义:在计算机通用协议中,有一些特定的方四定义的字母,系统会特定处理:通常这种方式都是使用反斜杠+字母(单词)的特性:\r\n    回车换行

  php 在识别转义字符的时候也是使用同样的模式:反斜杠+字母

  在php中系统常用的转义符号:

  \'  在单引号字符串中显示单引号

  \"  在双引号字符串中显示双引号

  \r  代表回车

  \n  代表新一行

  \t  类似 tab 键 

  \$  在php中使用$ 符号作为变量符号,因此需要特定识别

 

  单引号额双引号的区别:双引号中可以解析变量但一定要用大括号{}包裹变量,解析转义字符;单引号不可以解析变量,有些转义字符也不解析

  结构化定义字符串变量的规则:

    边界条件:

      上边界后不能跟任何内容

      下边界符必须顶格:最左边,且不能跟任何内容

    结构化定义字符串的内部的所有内容都是字符串本身

------------------------------------

字符串长度

  基本函数 strlen() :得到字符串的长度

  多字节字符串扩展模块: mdstring 扩展

  首先需要加载php 的 mbstring 扩展

  mbstring 扩展针对的是一些关于字符统计:strlen只是针对标准交换码 ASCII mbstring 会针对不同的字符集: utf-8

$str1 = 'mysteriouskiller';
$str2 = '与子同袍';

echo strlen(str1),'<br/>',$strlen($str2);
echo '<hr/>';
// 使用mbstring 扩展
echo mb_strlen($str1),'<br/>',mb_strlen($str2),'<br/>',mb_strlen($str2,'utf-8');

 

字符串相关函数

  转换函数:

    implode(连接方式,数组),将数组中的元素按照某个规则连接成一个字符串

    explode(分割字符,目标字符串),将字符串按照某个格式进行分割,变成数组

    str_split(字符串,字符长度),按照指定长度拆分字符串得到数组

  截取函数:

    erim(字符串[,指定字符]),本身默认是用来去除两边的空格(中间不行),但是可以指定要去除的内容,是按照指定的内容循环去除两边有的内容:直到碰到一个不是目标字符为止

    ltrim(),去除左边的

    rtrim(),去除右边的

  截取函数:

    substr(字符串,起始位置从0开始[,长度]),指定位置开始截取字符串,可以截取指定长度(不指定到最后)

    strstr(字符串,匹配字符),从指定位置开始截取到最后

$str = 'mysteriouskiller';
echo substr($str,1,6),'<br/>';
echo strstr($str,''k);

 

  大小转换函数:

    strtolower(),全部小写

    strtoupper(),全部大写

    ycfirst(),首字母大写

  查找函数:

    strpos(),判断字符在目标字符串中的位置

    strrpos(),判断字符在目标字符串中最后出现的位置

  替换函数:

    str_replace(匹配目标,替换的内容,字符串本身),将目标字符串中部分字符串进行替换

$str = 'mima12306aa';
echo str_replace('a','b',$str);

  格式化函数:

    printf(),sprintf(输出字符串有占位符,顺序占位内容),格式化输出数据

$age = 8;
$name = '小贤';
echo sprintf("好男人就是我,我就是%s",$name);
echo sprintf("我是胡一菲,年级%d了",$age);

 

  其他:

    str_repeat(),重复某一个字符串N次

    str_shuffle(),随机打乱字符串

 

posted @ 2018-11-16 08:52  SilentKiller  阅读(181)  评论(0)    收藏  举报