zoukankan      html  css  js  c++  java
  • PHP基础之 string 字符串函数

    /*=================常用字符串处理函数==================
    ltrim();        //去掉字符串左边的空格
    rtrim();         //去掉字符串右边的空格
    trim();         //去掉字符串两边的空格
    strlen();        //获取字符串长度
    strrev();        //反转字符串顺序
    strtolower();    //所有字符转小写
    strtoupper();    //所有字符转大写
    ucfirst();        //将字符串中第一个字符改为大写
    ucwords();        //将字符串中每个单词第一个字母改为大写
    explode();    //使用一个字符串分割另一个字符串
    implode();    //联合一组字符串
    substr();        //取子字符串
    strstr();        //返回字符串中某字符串开始处至结束的字符串
    strrchr();        //返回组后出现的字符串到结束的位置。
    strpos();        //寻找字符串中某字符最先出现的位置。
    strrpos();        //寻找字符串中某字符最后出现的位置。
    str_pad();        //字符串的填补函数
    */

    /* 1、ltrim();        //去掉字符串左边的空格
         示例:*/
         $str1 = "  abc  ";
         $newStr1 = ltrim($str1);
         echo "结果:".$newStr1."长度:".strlen($newStr1);//结果:abc  长度:5
    
            
    /* 2、rtrim();         //去掉字符串右边的空格
         示例:*/
         $newStr2 = rtrim($str1);
         echo "结果:".$newStr2."长度:".strlen($newStr2);//结果:  abc长度:5
    
            
    /* 3、trim();         //去掉字符串两边的空格
         示例:*/
         $newStr3 = trim($str1);
         echo "结果:".$newStr3."长度:".strlen($newStr3);//结果:abc长度:3
            
    /* 4、strlen();        //获取字符串长度
          示例:*/
          echo strlen($str1); //7
            
    /* 5、strrev();        //反转字符串顺序
          示例:*/
          $str2 = "how are You";
          echo strrev($str2);//uoy era woh
            
    /* 6、strtolower();    //所有字符转小写
          示例:*/
          echo strtolower($str2);//how are you
            
    /* 7、strtoupper();    //所有字符转大写
           示例:*/
        echo strtoupper($str2);//HOW ARE YOU
            
    /* 8、ucfirst();        //将字符串中第一个字符改为大写
           示例:*/
        echo ucfirst($str2);//How are You
            
    /* 9、ucwords();        //将字符串中每个单词第一个字母改为大写
           示例:*/
        echo ucwords($str2);//How Are You
    
    
    
    /* 10、explode(参数1,参数2,[参数3]) 分割字符串返回一个数组类型  【等同于C# split()方法】
           参数1:分割符
          参数2:要分割的字符串
          参数3:可选参数。分割为几份
        示例:*/
        $strArr1 = explode(" ", $str2);
        $strArr2 = explode(" ", $str2,2);
        var_dump($strArr1);
        var_dump($strArr2);
        //array(3) {
        //   [0]=>
        //   string(3) "how"
        //   [1]=>
        //   string(3) "are"
        //   [2]=>
        //   string(3) "You"
        // }
        // array(2) {
        //   [0]=>
        //   string(3) "how"
        //   [1]=>
        //   string(7) "are You"
        // }
    
    
    /* 11、implode(参数1,参数2) 拼接字符串  【等同于javascript数组对象的join()方法】
           参数1:拼接符
          参数2:要处理的字符串数组
         示例:*/
         $arr = array(2,8,5,6,1,7);
         echo implode(",", $arr);//2,8,5,6,1,7
    
    
    /* 12、substr(参数1,参数2,[参数3])   截取字符串
            参数1:要操作的字符串,
            参数2:开始位置,
            参数3:可选参数,要截取的长度。
        示例:
    */
        $str3 = "192.168.1.88";
        echo substr($str3, 4);//168.1.88
        echo substr($str3, 4,3);//168
    
    /* 13、strstr(参数1,参数2)      从指定的字符串开始,截取字符串
        // 此方法还可以写作strchr()
        参数1:要操作的字符串
        参数2:开始位置的字符串
        示例:*/
        echo strstr($str3, "6");//68.1.88
    
    
    /* 14、strpos(参数1,参数2,[参数3])  查找指定字符串出现的位置  【等价于C#中的IndexOf()方法】
        参数1:操作的字符串
        参数2:要查找的字符串
        参数3:可选参数,开始位置。
         示例:*/
         $str4 = "Great hopes make great man";
         echo strpos($str4, "o");//7
         echo strpos($str4, "e",4);//9
    
    
    /* 15、 strrpos(参数1,参数2) 查找指定字符串最后一次出现的位置  【等价于C#中的LastIndexOf()方法】
          参数1:要操作的字符串
         参数2:要查找的字符串
          示例:*/
          echo strrpos($str4, "a");//24
          // 在路径中查找文件名D:PHPEnvReadMe.txt
          $path = "D:PHPEnvReadMe.txt";
          echo "文件名为:".substr($path, strrpos($path,"\")+1);//文件名为:ReadMe.txt
    
    /* 16、str_pad(参数1,参数2,[参数3],[参数4])       填补字符串
         参数1:要操作的字符串
        参数2:新字符串长度
        参数3:可选参数,要填补的字符串
        参数4:可选参数,填补类型   STR_PAD_BOTH、STR_PAD_RIGHT、STR_PAD_LEFT
         示例:*/
         echo str_pad($str4, 50,"=",STR_PAD_BOTH);//============Great hopes make great man============
            
    /* 17、str_replace(参数1,参数2,str,count) 字符串替换 str_replace(search, replace, subject)
         参数1:要替换的字符/数组
        参数2:新的字符/数组
        参数3:操作的字符串
        count: 替换的个数
         示例:*/
        echo "
    ";
        echo str_replace("t", "M", $str4);//GreaM hopes make greaM man
        $str="选1、选2、选3、选4";
        $arr=array("1","2","3","4");
        $arr1=array("a","b","c","d");
        $str=str_replace($arr,$arr1,$str,$count);
        echo "
    ";
        echo $str."==替换的个数:".$count;
    
    
    /* 18、strcmp(字符串1,字符串2) /strcasecmp(字符串1,字符串2)【二进制比较】
        =0 - 如果两个字符串相等 
        <0 - 如果 string1 小于 string2 
        >0 - 如果 string1 大于 string2 
         示例:*/
         echo "
    ";
         echo strcmp("Hello", "hello");        //-1  区分大小写比较(内部进行二进制级别比较)
         echo strcasecmp("Hello", "hello");    //0  忽略大小写比较(内部进行二进制级别比较)
    
    /* 19、strnatcmp(字符串1,字符串2) 使用一种“自然”算法来比较两个字符串。【自然排序法比较】
        strnatcasecmp(字符串1,字符串2);
        在自然算法中,数字 "2" 小于数字 "10"。在计算机排序中,"2" 大于 "10",这是因为 "2" 大于 "10" 的第一个数字。
        示例:*/
        echo "
    ";
        echo strnatcmp("5", "20");        //-1  区分大小写比较 
        echo strnatcasecmp("H", "h");    //0      忽略大小写比较
    
    /* 20、soundex(str)计算字符串的 soundex 键返回键值,表示一个英文单词的发音  【模糊比较】
         similar_text(str1,str2,percent)  返回匹配数量
         计算两个字符串的匹配字符的数目,参数3:存储百分比相似度的变量
         示例:*/
         echo "
    ";
         echo soundex("hello");    //H400
         echo "
    ";
         echo similar_text("first", "fire",$pct);//3
         echo("
    ".$pct);        //66.666666666667
    
    
    /* 21、strtr(str,oldChr,newChr)  【转换特定的字符】
         示例:*/
         echo "
    ";
         echo strtr("hello word yes", "lo", "TW");//heTTW wWrd yes
    
    /* 22、stripslashes(str) 删除字符串中的反斜杠(用于清理从数据库或 HTML 表单中取回的数据。)
         示例:*/
         echo "
    ";
         echo stripcslashes("D:PHPEnvReadMe.txt");//D:PHPEnvReadMe.txt
    
    /* 23、htmlentities(string,[quotestyle],[character-set]) 把字符转换为 HTML 实体
        [quotestyle]:编码单引或双引号
                    ENT_COMPAT - 默认。仅编码双引号。 
                    ENT_QUOTES - 编码双引号和单引号。 
                    ENT_NOQUOTES - 不编码任何引号。
        [character-set]:指定转换的编码
         示例:*/
         echo "
    ";
         echo stripcslashes("<div>hello</div><b>word</b>");//按HTML格式输出,标签会被解释执行
    
    /* 24、strip_tags(str,[allow]) 默认剥去 HTML、XML 以及 PHP 的标签。
        [allow]:指定要保留的标签
         示例:*/
         echo "
    ";
         echo strip_tags("<div>hello</div><b>word</b>","<b>");//过滤掉div保留b标签
    
    
    
    /* 25、parse_str()  解析URL中传递的参数*/
        parse_str("id=23&name=John%20Adams",$myArray);
        print_r($myArray);
        // Array
        // (
        //     [id] => 23
        //     [name] => John Adams
        // )
    
    
    /* 26、    http_build_query();  构造URL传递参数*/
        $data = array('foo'=>'bar',
                      'baz'=>'boom',
                      'cow'=>'milk',
                      'php'=>'hypertext processor');
                      
        echo http_build_query($data);
        /* 输出:
              foo=bar&baz=boom&cow=milk&php=hypertext+processor
        */
    
        //将对象构造为参数
        class myClass {
          var $foo;
          var $baz;
          
          function myClass() {
            $this->foo = 'bar';
            $this->baz = 'boom';
          }
        }
    
        $data = new myClass();
    
        echo http_build_query($data);
        /* 输出:
              foo=bar&baz=boom
        */
    
    // URL编码处理函数
    //     urlencode();
    //     urldecode();
    
    //其它:
    echo "
    ";
    printf("%0.2f","222.25466"); //222.25  以小数输出,精确到2位小数
    
    echo "
    ";
    echo ord("A");//只转码第一个字符为ASCII码
    
    echo "
    ";
    printf("%c", 0x41);  //A 将16进进制的数字转换为ASCII码表示的字符
    
    echo "
    ";               
    printf("%c", 0101);  //A 第二个参数一定不能用单/双引号  
    
    echo "
    ";             
    printf("%c", 65);    //A 第二个参数一定不能用单/双引号  
    
    echo "
    ";                
    printf("%c", '01000001');  //A
    
    echo "
    ";                
    echo chr(100); //d
  • 相关阅读:
    springboot项目引入通用mapper(tk.mybatis.mapper)的时候一些可能会踩的坑
    Zookeeper和Dubbo基本配置和调用
    Zookeeper和Dubbo介绍
    Git的基础命令大全,拉取推送,分支,合并,冲突
    Maven内置tomcat
    Maven高级,依赖传递和解决冲突,版本锁定,提取统一版本号
    SpringMvc的自定义异常,交给SpringMvc管理
    IDEA创建MavenWeb项目慢,问题根除
    Docker安装指南
    Docker容器入门
  • 原文地址:https://www.cnblogs.com/lt-style/p/3494249.html
Copyright © 2011-2022 走看看