zoukankan      html  css  js  c++  java
  • PHP 字符串操作

    关于PHP字符串的操作函数

    代码如下:

    <?php
    //addcslashes()  在字符 “A” 之前添加一个反斜杠
    $a = "abcdefg";
    $value = addcslashes($a,c);
    echo $value;
    echo "<b style='color: blue'>我是addcslashes()</b>";
    echo "<br/>
    ";
    
    //addslashes() 在每个双引号(")前添加反斜杠
    $str = addslashes('shanghai is very "problem" city');
    echo $str;
    echo "<b style='color: blue'>我是addslashes()</b>";
    echo "<br/>
    ";
    
    //html_entity_decode() 把 HTML 实体转换为字符
    $str1 = "Bill &amp; &#039;Steve&#039;";
    echo html_entity_decode($str1,ENT_QUOTES, "ISO-8859-1");
    echo "<br/>
    ";echo "<b style='color: blue'>我是html_entity_decode()</b>";
    
    //htmlentities()把字符转换为 HTML 实体
    $str2 = "<? W3S?h????>";
    echo htmlentities($str2);
    echo "<b style='color: blue'>我是htmlentities()</b>";
    echo "<br/>
    ";
    
    
    //chunk_split() 在每个字符后分割一次字符串,并在每个分割后添加 "."
    //语法:chunk_split(string,length,end)
    //参数:string	必需。规定要分割的字符串。
    //     length	可选。数字值,定义字符串块的长度  默认是76
    //     可选。字符串值,定义在每个字符串块末端放置的内容。默认是 
    
    $str3 = "hello";
    echo chunk_split($str3,1,".");echo "<b style='color: blue'>我是chunk_split()</b>";
    echo "<br/>
    ";
    
    //str_split()  把字符串分割到数组中
    print_r(str_split("hello"));
    echo "<b style='color: blue'>我是str_split()</b>";echo "<br/>";
    
    //strtok()   逐一分割字符串
    //语法:strtok(string,split)
    //参数:string	必需。规定要分割的字符串。  split	必需。规定一个或多个分割字符。
    $string = "Hello world. Beautiful day today.";
    $aa = strtok($string," ");
    while ($aa !== false)
    {
        echo "$aa<br>";
        $aa = strtok(" ");
    }    echo "<b style='color: blue'>我是strtok()</b>";echo "<br/>";
    
    //explode()   把字符串打散为数组
    //语法:explode(separator,string,limit)
    //参数:separator	必需。规定在哪里分割字符串。  string	必需。要分割的字符串。
    //limit   可选。规定所返回的数组元素的数目。
    //可能的值:
    //大于 0 - 返回包含最多 limit 个元素的数组
    //小于 0 - 返回包含除了最后的 -limit 个元素以外的所有元素的数组
    //0 - 返回包含一个元素的数组
    $str4 = "Hello world. I love Shanghai!";
    print_r (explode(" ",$str4));
    echo "<b style='color: blue'>我是explode()</b>";echo "<br/>";
    
    //ucwords  把每个单词的首字符转换为大写
    echo ucwords("hello world");
    
    
    //ucfirst() 函数把字符串中的首字符转换为大写。
    echo ucfirst("hello");
    
    //str_shuffle()   随机打乱字符串中所有字符
    //语法:str_shuffle(string)
    //参数:string	必需。规定要打乱的字符串。
    echo str_shuffle("I love Shanghai");
    echo "<b style='color: blue'>我是str_shuffle()</b>";echo "<br/>";
    
    //implode() 把数组元素组合为字符串
    //语法:implode(separator,array)
    //separator	可选。规定数组元素之间放置的内容。
    //array	必需。要组合为字符串的数组。
    $arr1 = array('Hello','World!','I','love','Shanghai!');
    foreach ($arr1 as $key => $value){
        echo "key => $key value => $value";
        echo "<br/>";
    }
    echo "以上是遍历数组的值<br/>";
    echo implode(" ",$arr1);
    echo "<b style='color: blue'>我是implode()</b>";echo "<br/>";
    //join()  implode()的别名
    echo "join() 是implode()的别名";
    echo "<b style='color: blue'>我是join()</b>";echo "<br/>";
    
    //bin2hex()  把ASCII字符的字符串转换为十六进制
    $b = "hello";
    echo bin2hex($b);
    echo "<b style='color: blue'>我是bin2hex()</b>";echo "<br/>";
    
    //hex2bin()  把十六进制的字符转换为ASCII字符
    echo hex2bin("48656c6c6f20576f726c6421");
    echo "<b style='color: blue'>我是hex2bin()</b>";echo "<br/>";
    
    //lcfirst()   把字符串的首字符转换为小写
    $xiaoxie = "HELLO";
    echo lcfirst($xiaoxie);
    echo "<b style='color: blue'>我是lcfirst()</b>";echo "<br/>";
    
    //number_format()  格式化数字
    //语法:number_format(number,decimals,decimalpoint,separator)
    //参数:number  必需。要格式化的数字。 如果未设置其他参数,则数字会被格式化为不带小数点且以逗号(,)作为千位分隔符。
    //decimals	可选。规定多少个小数。如果设置了该参数,则使用点号(.)作为小数点来格式化数字。
    //decimalpoint	可选。规定用作小数点的字符串。
    //separator  可选。规定用作千位分隔符的字符串。仅使用该参数的第一个字符。比如 "xxx" 仅输出 "x"。  注释:如果设置了该参数,那么所有其他参数都是必需的。
    echo number_format("9999")."<br>";
    echo "希望返回一个价格:一个参数将对数字进行舍入";
    $num = 4999.9;
    $formattedNum = number_format($num)."<br>";
    echo $formattedNum;
    $formattedNum = number_format($num, 2);
    echo $formattedNum;
    echo "<b style='color: blue'>我是number_format()</b>";echo "<br/>";
    
    //similar_text()  计算两个字符串的相似度
    echo similar_text("Hello World","Hello Shanghai");
    
    //str_ireplace()    替换字符串的一些字符 对大小写不敏感
    //语法:str_ireplace(find,replace,string,count)
    //参数: find	必需。规定要查找的值。也就是被替换的值
    //      replace	必需。规定替换的值
    //      string	必需。规定被搜索的字符串。
    //      count	可选。一个变量,对替换数进行计数。
    echo str_ireplace("WORLD","Shanghai","Hello world!");
    echo "<b style='color: blue'>我是str_ireplace()</b>";echo "<br/>";
    
    //str_replace()   替换字符串的一些字符 对大小写敏感
    //语法:str_replace(find,replace,string,count)
    //参数: find	必需。规定要查找的值。
    //      replace	必需。规定替换 find 中的值的值。
    //      string	必需。规定被搜索的字符串。
    //      count	可选。对替换数进行计数的变量。
    echo str_replace("world","Shanghai","Hello world!");
    echo "<b style='color: blue'>我是str_replace()</b>";echo "<br/>";
    
    //strlen  返回字符串的长度
    echo strlen("hello");
    echo "<b style='color: blue'>我是strlen()</b>";echo "<br/>";
    
    //str_repeat() 函数把字符串重复指定的次数。
    //语法:str_repeat(string,repeat)
    //参数: string	必需。规定要重复的字符串。
    //      repeat	必需。规定字符串将被重复的次数。必须大于等于 0。
    $chongfu = "PHP是最好的语言";
    echo str_repeat($chongfu,5);
    echo "<b style='color: blue'>我是str_repeat()</b>";echo "<br/>";
    
    //str_word_count() 计算字符串中的单词书
    echo str_word_count("hello world ad s ljhas ");
    echo "<b style='color: blue'>我是str_word_count()</b>";echo "<br/>";
    
    //strcasecmp()  比较两个字符串   对大小写不敏感
    echo strcasecmp("hello","hel");
    echo "<b style='color: blue'>我是strcasecmp()</b>";echo "<br/>";
    
    
    //strcmp()    比较两个字符串   对大小写敏感
    //返回值:该函数返回:
    //0 - 如果两个字符串相等
    //<0 - 如果 string1 小于 string2
    //>0 - 如果 string1 大于 string2
    echo strcmp("hello","He");
    echo "<b style='color: blue'>我是strcmp()</b>";echo "<br/>";
    
    //strchr()    查找字符串在另一鸽字符串中的第一次出现  strstr的别名
    echo strchr("Hello world!","ll");
    echo "<b style='color: blue'>我是strchr()</b>";echo "<br/>";
    
    //stripos()    返回字符串在另一字符串中第一次出现的位置   对大小写不敏感
    //语法:stripos(string,find,start)
    //参数: string	必需。规定要搜索的字符串。
    //      find	必需。规定要查找的字符。
    //      start	可选。规定开始搜索的位置。
    //类似于下标从0开始带空格
    echo stripos("You love php, I love php too!","l");
    echo "<b style='color: blue'>我是stripos()</b>";echo "<br/>";
    
    
    //strpos()  返回字符串在另一字符串中第一次出现的位置   对大小写敏感
    echo strpos("Hello ljh","H");
    echo "<br/>";
    echo strpos("Hello ljh","h");
    echo "<b style='color: blue'>我是strpos()</b>";echo "<br/>";
    
    //strrpos() 查找字符串在另一字符串中最后一次出现的位置(区分大小写)
    //语法:strripos(string,find,start)
    //参数: string	必需。规定被搜索的字符串。
    //       find	必需。规定要查找的字符。
    //       start	可选。规定在何处开始搜索。
    //返回值:	 返回字符串在另一字符串中最后一次出现的位置,如果没有找到字符串则返回 FALSE。注释: 字符串位置从 0 开始,不是从 1 开始。
    <?php
    $phone = "17943596998137738847091593794520818397664593";
    $a = strrpos($phone,'9');
    echo "数字9最后一次出现的位置是:";echo $a;
    
    //strrev()  反转字符串
    echo strrev("olleH");
    echo "<b style='color: blue'>我是strrev()</b>";echo "<br/>";
    
    //strtolower()   把字符串转换为小写字母
    echo strtolower("HELLO WORLD");
    echo "<b style='color: blue'>我是strtolower()</b>";echo "<br/>";
    
    //strtoupper()   把字符串转换为大写字母
    echo strtoupper("hello world");
    echo "<b style='color: blue'>我是strtoupper()</b>";echo "<br/>";
    
    //substr()  返回字符串的一部分
    //语法:substr(string,start,length)
    //参数:string	必需。规定要返回其中一部分的字符串。
    //start	必需。规定在字符串的何处开始。
    //正数 - 在字符串的指定位置开始
    //负数 - 在从字符串结尾的指定位置开始
    //0 - 在字符串中的第一个字符处开始
    //length	可选。规定要返回的字符串长度。默认是直到字符串的结尾。
    //正数 - 从 start 参数所在的位置返回
    //负数 - 从字符串末端返回
    echo substr("Hello world",6);
    echo "<b style='color: blue'>我是substr()</b>";echo "<br/>";
    
    //字符串输出函数
    //echo       输出一个或多个字符串
    //print      输出一个或多个字符串
    //printf     输出格式化的字符串
    //fprintf    把格式化的字符串写入到指定的输出流
    //sprintf    把格式化的字符串写入变量中
    //sscanf     根据指定的格式解析来自字符串的输入
    //parse_str  把查询字符串解析到变量中
    
    //chr()  从不同的 ASCII 值返回字符
    echo chr(97) . "<br>"; // 十进制
    echo chr(061) . "<br>"; // 八进制值
    echo chr(0x61) . "<br>"; // 十六进制值
    echo "<b style='color: blue'>我是chr()</b>";echo "<br/>";
    
    //ord()  返回字符串的首个字符的 ASCII
    echo ord("a");
    echo "<b style='color: blue'>我是ord()</b>";echo "<br/>";
    
    //crc32()  计算字符串的32位CRC
    $stra = crc32("Shanghai");
    printf("%u
    ",$stra);
    echo "<b style='color: blue'>我是crc32()</b>";echo "<br/>";
    
    //md5()    计算字符串的MD5散列
    echo md5("admin");
    echo "<b style='color: blue'>我是md5()</b>";echo "<br/>";
    
    //md5_file()  计算文件的MD5散列
    echo md5_file("string operation.php");//就是本文件的md5值
    echo "<b style='color: blue'>我是md5_file()</b>";echo "<br/>";
    
    
    //sha1()   计算字符串的SHA-1散列
    echo sha1("admin");
    echo "<b style='color: blue'>我是sha1()</b>";echo "<br/>";
    
    //sha1_file()  计算文件的MD5散列
    echo sha1_file("string operation.php");//就是本文件的md5值
    echo "<b style='color: blue'>我是sha1_file()</b>";echo "<br/>";
    

    执行结果如下图 可以对比:
    aa

    • 文中的md5()计算如下:
      aaa
  • 相关阅读:
    专职DBA-MySQL体系结构与基本管理
    JSON
    MIME类型
    文件上传下载
    response常用的方法
    2020.11.27小记
    HTTP请求状态码
    1561. Maximum Number of Coins You Can Get
    1558. Minimum Numbers of Function Calls to Make Target Array
    1557. Minimum Number of Vertices to Reach All Nodes
  • 原文地址:https://www.cnblogs.com/Lay0us/p/12120558.html
Copyright © 2011-2022 走看看