zoukankan      html  css  js  c++  java
  • PHP字符串的处理(一)-字符串初识和比较

    在PHP中,字符和字节一样,共有256种不同字符的可能性,PHP对Unicode没有本地支持,一个GB2312编码的汉字占2字节,一个UTF-8编码的汉字占3字节字符串看作字符集和时,并不是真正的数组,获取字符串长度用strlen()函数,取字符串中的字符用{}

    <?php
        $str = "test";
        echo $str{0};  //输出一个字符t
        echo $str{1};  //输出一个字符e
        echo $str{2};  //输出一个字符s
        echo $str{3};  //输出一个字符t
        echo $str{1}.$str{2};  //输出两个字符es
        echo strlen($str);  //输出字符串$str的长度
        $str{strlen($str)-1} = 'q';  //把最后一个t替换成q
        $str{0} = 'admin'; //输出结果为aest
    ?>
    

    substr()函数:

    substr(string,start,length),把字符串视为数组

    string:字符串(必选)

    start:字符串开始的位置(必选)

    length:返回字符串的长度,默认是到字符串的结尾(可选)

    <?php
        echo substr("abcdef",2,3);  //输出cde
        echo substr(123456,2,4);   //输出3456
    ?>
    

    字符串比较:

    strcasecmp(str1,str2)   //忽略字符串中字母大小写进行比较

    strcmp(str1,str2)         //区分字符串中字母大小写进行比较

    对传入的str1和str2的字符串进行比较,返回三个值

    1.如果str1等于str2,返回0

    2.如果str1大于str2,返回1

    3.如果str1小于str2,返回-1

    <?php
    
        $username = "admin";
        
        if(strcasecmp($username,"admin") == 0){
            echo "用户名正确<br>";
        }else{
            echo "用户名错误<br>";
        }
        //输出:用户名正确
        
        if(strcasecmp($username,"Admin") == 0){
            echo "用户名正确<br>";
        }else{
            echo "用户名错误<br>";
        }
        //输出:用户名正确
        
        if(strcmp($username,"admin") == 0){
            echo "用户名正确<br>";
        }else{
            echo "用户名错误<br>";
        }
        //输出:用户名正确
        
        if(strcmp($username,"Admin") == 0){
            echo "用户名正确<br>";
        }else{
            echo "用户名错误<br>";
        }
        //输出:用户名错误
    ?>
    

    strnatcmp()   //按照自然排序法比较两个字符串,区分字符串大小写

    strnatcasecmp()   //按照自然排序法比较两个字符串,忽略字符串大小写

    在自然算法中,数字2小于数字10.在计算机排序中,10小于2,因为 10 中的第一个数字小于 2

    <?php echo strnatcasecmp("2test","10test"); //输出-1 ?>
    
  • 相关阅读:
    jmeter压力测试报错:java.net.BindException: Address already in use: connect
    C# 对话框总结(转载)
    C# 文件操作方法大全(转载)
    C#实现进度条progress control(转载)
    在Windows下架设FTP服务器
    .Net环境下,使用installutil.exe注册、删除windows服务
    用双网卡实现跨网段访问(转载)
    HTTP协议详解(转载)
    学习开发web服务(转载)
    C# 实现http协议的GET和POST请求(转载)
  • 原文地址:https://www.cnblogs.com/sch01ar/p/7659014.html
Copyright © 2011-2022 走看看