• PHP基础(五)字符串


    字符串类型

    1)单引号字符串:使用单引号包裹 单引号里面的不进行解释,直接输出。

    2)双引号字符串:使用双引号包裹 双引号里面的字段会经过编译器解释,然后再当作HTML代码输出。

           引号方式:比较适合定义那些比较短(不超过一行)或者没有结构要求的字符串,如果有结构要求,或者内容超过一行,可以使用以下两种结构来定义:

    3)nowdoc字符串:没有单引号的单引号字符串

    $str = <<<’边界符’

                  字符串内容

    边界符;

    4)heredoc字符串:没有双引号的双引号字符串

    $str = <<<边界符

                  字符串内容

    边界符;

     

    heredoc 和newdoc比引号区别多一点。

     

    结构化定义字符串变量的规则:(heredoc 和 newdoc)

    1、结构化定义字符串对应的边界符有条件:

    1.1 上边界符后面不能跟任何内容(空格、注释也不能跟)

           1.2 下边界符必须顶格(最左边)

           1.3 下边界符同样后面只能跟分号,不能跟其他任何内容

    2、结构化定义字符串的内部(边界符之间)的所有内容都是字符串本身(包括注释)。会当字符串全部输出。

    字符串转义

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

    :回车换行。

    PHP转义字符:

    ’  :在单引号字符串中显示单引号

    ”  :在双引号字符串中显示双引号

    $ :在PHP中使用$符号作为变量符号,因此需要特别识别。

          

    单引号和双引号的区别:

    1、单引号字符串中能识别’,双引号字符串中就不能识别’。

     

    2、双引号中因为能够识别$符号,所以双引号中可以解析变量,单引号中不可以。

     

    双引号中变量识别的规则:

    1)变量本身系统能够与后面的内容区分:应该保证变量的独立性,不要让系统难以区分

     

    2)使用变量专业标识符(区分),给变量加上一组大括号{}。

     

    字符串长度

    1)基本函数strlen():得到字符串的长度(字节为单位)

    2)多字节字符串的长度问题:包含中文的长度

    利用多字节字符串扩展模块:mbstring扩展(mb:Multi Bytes)

    首先需要加载PHP的mbstring扩展

     

    可以使用mb扩展带来很多函数

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

    如:mb_strlen($str,’utf-8’);

    字符串相关函数

    1)转换函数;implode()、explode()、str_split()

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

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

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

    2)截取函数:trim()、ltrim()、rtrim()

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

    ltrim():去除左边的空格或者其他字符

    rtrim():去除右边的空格或者其他字符

    3)截取函数:substr()、strstr()

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

    strstr(字符串,匹配字符):从指定位置开始截取到最后(可以用来取文件后缀名)

     

    4)大小转化函数:strtolower()、strtoupper()、ucfirst()

    strtolower(字符串):全部小写

    strtoupper(字符串):全部大写

    ucfirst(字符串):首字母大写(首字母为空格则看不出效果)

    5)查找函数:strpos()、strrpos()

    strpos():判断字符在目标字符串中首次出现的位置

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

    6)替换函数:str_replace()

    str_replace(mixed $search , mixed $replace , mixed $subject):将目标字符串中部分字符串进行替换

    7)格式化函数:printf()、sprintf()

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

    8)其他:str_repeat()、str_shuffle()

    str_repeat((string $input , int $multiplier):重复某个字符串n次

    str_shuffle():随机打乱字符串

  • 相关阅读:
    正则表达式
    HashTable与HashMap的区别
    求解连续子数组乘积的最大值
    求解N个值中最大的k个数,N远大于k
    C++权限修饰符
    DBSCAN算法
    【leetcode】1318. Minimum Flips to Make a OR b Equal to c
     【leetcode】1317. Convert Integer to the Sum of Two No-Zero Integers
    【leetcode】1316. Distinct Echo Substrings
    【leetcode】1315. Sum of Nodes with Even-Valued Grandparent
  • 原文地址:https://www.cnblogs.com/sun-yanglu/p/9543511.html
Copyright © 2020-2023  润新知