• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    php字符串函数 str类常见用法示例

    本文实例讲述了php字符串函数 str类常见用法。分享给大家供大家参考,具体如下:

    str_split(string, leg);//将一个字符 串转换为数组,参数1:要被转换的字符串,参数2:每 段长度, 返回一个转换后的数组

    例:

    ?php
    $str = "Hello Friend";
    $arr = str_split($str, 3);
    
    

    Array
    (
        [0] => Hel
        [1] => lo
        [2] => Fri
        [3] => end
    )

    ord(string);//返回字符的ASCII码值,,,返回字符串string第一个字符的ASCII码值

    例:$test = 'abc';

    $offset = 0;
    while ($offset >= 0) {
      echo $offset.": ".ordutf8($text, $offset)."\n";
     // 97,98,99
    
    

    sizeof();//count()的别名

    end();//将数组的内部指针指向最后一个单元

    ?php
    $fruits = array('apple', 'banana', 'cranberry');
    echo end($fruits); // cranberry
    ?>
    
    

    strlen($string);//获取字符串长度

    例:

    echo strlen('hai');//3
    
    

    sprintf(format, arg1, arg2, arg++);//把格式化的字符串写入变量中。

    例:

    ?php
    $num1 = 123456789;
    $num2 = -123456789;
    $char = 50; // ASCII 字符 50 是 2
    // 注释:格式值 "%%" 返回百分号
    echo sprintf("%%b = %b",$num1)."br>"; // 二进制数
    echo sprintf("%%c = %c",$char)."br>"; // ASCII 字符
    echo sprintf("%%d = %d",$num1)."br>"; // 带符号的十进制数
    echo sprintf("%%d = %d",$num2)."br>"; // 带符号的十进制数
    echo sprintf("%%e = %e",$num1)."br>"; // 科学计数法(小写)
    echo sprintf("%%E = %E",$num1)."br>"; // 科学计数法(大学)
    echo sprintf("%%u = %u",$num1)."br>"; // 不带符号的十进制数(正)
    echo sprintf("%%u = %u",$num2)."br>"; // 不带符号的十进制数(负)
    echo sprintf("%%f = %f",$num1)."br>"; // 浮点数(视本地设置)
    echo sprintf("%%F = %F",$num1)."br>"; // 浮点数(不视本地设置)
    echo sprintf("%%g = %g",$num1)."br>"; // 短于 %e 和 %f
    echo sprintf("%%G = %G",$num1)."br>"; // 短于 %E 和 %f
    echo sprintf("%%o = %o",$num1)."br>"; // 八进制数
    echo sprintf("%%s = %s",$num1)."br>"; // 字符串
    echo sprintf("%%x = %x",$num1)."br>"; // 十六进制数(小写)
    echo sprintf("%%X = %X",$num1)."br>"; // 十六进制数(大写)
    echo sprintf("%%+d = %+d",$num1)."br>"; // 符号说明符(正)
    echo sprintf("%%+d = %+d",$num2)."br>"; // 符号说明符(负)
    ?>
    
    

    返回结果:

    %b = 111010110111100110100010101
    %c = 2
    %d = 123456789
    %d = -123456789
    %e = 1.234568e+8
    %E = 1.234568E+8
    %u = 123456789
    %u = 18446744073586094827
    %f = 123456789.000000
    %F = 123456789.000000
    %g = 1.23457e+8
    %G = 1.23457E+8
    %o = 726746425
    %s = 123456789
    %x = 75bcd15
    %X = 75BCD15
    %+d = +123456789
    %+d = -123456789

    substr_replace(mixed $string , mixed $replacement , mixed $start [, mixed $length ]);// 替换字符串的子串

    ?php
    $var = 'ABCDEFGH:/MNRPQR/';
    echo "Original: $varhr />\n";
     
    /* 这两个例子使用 "bob" 替换整个 $var。*/
    echo substr_replace($var, 'bob', 0) . "br />\n";
    echo substr_replace($var, 'bob', 0, strlen($var)) . "br />\n";
     
    /* 将 "bob" 插入到 $var 的开头处。*/
    echo substr_replace($var, 'bob', 0, 0) . "br />\n";
     
    /* 下面两个例子使用 "bob" 替换 $var 中的 "MNRPQR"。*/
    echo substr_replace($var, 'bob', 10, -1) . "br />\n";
    echo substr_replace($var, 'bob', -7, -1) . "br />\n";
     
    /* 从 $var 中删除 "MNRPQR"。*/
    echo substr_replace($var, '', 10, -1) . "br />\n";
    ?> 
    
    

    strpos();//查找字符串首次出现的位置。

    1、

    ?php
    // 忽视位置偏移量之前的字符进行查找
    $newstring = 'abcdef abcdef';
    $pos = strpos($newstring, 'a', 1); // $pos = 7, 不是 0
    ?> 
    
    

    2、

    ?php
    $mystring = 'abc';
    $findme  = 'a';
    $pos = strpos($mystring, $findme);
     
    // 使用 !== 操作符。使用 != 不能像我们期待的那样工作,
    // 因为 'a' 的位置是 0。语句 (0 != false) 的结果是 false。
    if ($pos !== false) {
       echo "The string '$findme' was found in the string '$mystring'";
         echo " and exists at position $pos";
    } else {
       echo "The string '$findme' was not found in the string '$mystring'";
    }
    ?> 
    
    

    3、

    ?php
    $mystring = 'abc';
    $findme  = 'a';
    $pos = strpos($mystring, $findme);
     
    // 注意这里使用的是 ===。简单的 == 不能像我们期待的那样工作,
    // 因为 'a' 是第 0 位置上的(第一个)字符。
    if ($pos === false) {
      echo "The string '$findme' was not found in the string '$mystring'";
    } else {
      echo "The string '$findme' was found in the string '$mystring'";
      echo " and exists at position $pos";
    }
    ?> 
    
    

    preg_split($pet, $str);//通过一个正则表达式分隔字符串;

    $keywords = preg_split("/[\s,]+/", "hypertext language, programming");
    print_r($keywords);
    
    

    输出:

    array(3) { 
    [0]=>  string(9) "hypertext" 
    [1]=>  string(8) "language" 
    [2]=>  string(11) "programming"
    }

    explode($del, $str, $limit);//使用一个字符串分割另一个字符串

    ?php
    $str = 'one|two|three|four';
     
    // 正数的 limit
    print_r(explode('|', $str, 2));
     
    // 负数的 limit(自 PHP 5.1 起)
    print_r(explode('|', $str, -1));
    ?> 
    
    

    以上例程会输出:

    Array
    (
        [0] => one
        [1] => two|three|four
    )
    Array
    (
        [0] => one
        [1] => two
        [2] => three
    )

    parse_str($str);//将字符串解析成多个变量

    $str = "first=valuearr[]=foo+bararr[]=baz";
    parse_str($str);
    echo $first; // value
    echo $arr[0]; // foo bar
    echo $arr[1]; // baz
     
    parse_str($str, $output);
    echo $output['first']; // value
    echo $output['arr'][0]; // foo bar
    echo $output['arr'][1]; // baz
    
    

    strstr($string,$needle,$before_needle);//查找字符串的首次出现

    ?php
    $email = 'name@example.com';
    $domain = strstr($email, '@');
    echo $domain; // 打印 @example.com
     
    $user = strstr($email, '@', true); // 从 PHP 5.3.0 起
    echo $user; // 打印 name
    ?> 
    
    

    substr($string,$start,$lenght);// 返回字符串的子串(返回字符串 string 由 start 和 length 参数指定的子字符串)

    1、

    ?php
    $rest = substr("abcdef", -1);  // 返回 "f"
    $rest = substr("abcdef", -2);  // 返回 "ef"
    $rest = substr("abcdef", -3, 1); // 返回 "d"
    ?> 
    
    

    2、

    ?php
    $rest = substr("abcdef", 0, -1); // 返回 "abcde"
    $rest = substr("abcdef", 2, -1); // 返回 "cde"
    $rest = substr("abcdef", 4, -4); // 返回 ""
    $rest = substr("abcdef", -3, -1); // 返回 "de"
    ?> 
    
    

    3、

    ?php
    echo substr('abcdef', 1);   // bcdef
    echo substr('abcdef', 1, 3); // bcd
    echo substr('abcdef', 0, 4); // abcd
    echo substr('abcdef', 0, 8); // abcdef
    echo substr('abcdef', -1, 1); // f
     
    // 访问字符串中的单个字符
    // 也可以使用中括号
    $string = 'abcdef';
    echo $string[0];         // a
    echo $string[3];         // d
    echo $string[strlen($string)-1]; // f
    ?> 
    
    

    strtr();//转换指定字符

    string strtr ( string $str , string $from , string $to )

    string strtr ( string $str , array $replace_pairs )

    该函数返回 str 的一个副本,并将在 from 中指定的字符转换为 to 中相应的字符。 比如, $from[$n]中每次的出现都会被替换为 $to[$n],其中 $n 是两个参数都有效的位移(offset)。

    如果 from 与 to 长度不相等,那么多余的字符部分将被忽略。 str 的长度将会和返回的值一样。

    1、

    使用两个参数的 strtr() 范例

    ?php
    $trans = array("hello" => "hi", "hi" => "hello");
    echo strtr("hi all, I said hello", $trans);
    ?> 
    
    

    以上例程会输出:

    hello all, I said hi

    2、

    ?php
    echo strtr("baab", "ab", "01"),"\n";
     
    $trans = array("ab" => "01");
    echo strtr("baab", $trans);
    ?> 
    
    

    以上例程会输出:

    1001
    ba01

    str_replace(mixed $search , mixed $replace , mixed $subject [, int $count ]);//子字符串替换

    该函数返回一个字符串或者数组。该字符串或数组是将 subject 中全部的 search 都被 replace 替换之后的结果

    ?php
    // 赋值: body text='black'>
    $bodytag = str_replace("%body%", "black", "body text='%body%'>");
     
    // 赋值: Hll Wrld f PHP
    $vowels = array("a", "e", "i", "o", "u", "A", "E", "I", "O", "U");
    $onlyconsonants = str_replace($vowels, "", "Hello World of PHP");
     
    // 赋值: You should eat pizza, beer, and ice cream every day
    $phrase = "You should eat fruits, vegetables, and fiber every day.";
    $healthy = array("fruits", "vegetables", "fiber");
    $yummy  = array("pizza", "beer", "ice cream");
     
    $newphrase = str_replace($healthy, $yummy, $phrase);
     
    // 赋值: 2
    $str = str_replace("ll", "", "good golly miss molly!", $count);
    echo $count;
    ?> 
    
    
    ?php
    // 替换顺序
    $str   = "Line 1\nLine 2\rLine 3\r\nLine 4\n";
    $order  = array("\r\n", "\n", "\r");
    $replace = 'br />';
     
    // 首先替换 \r\n 字符,因此它们不会被两次转换
    $newstr = str_replace($order, $replace, $str);
     
    // 输出 F ,因为 A 被 B 替换,B 又被 C 替换,以此类推...
    // 由于从左到右依次替换,最终 E 被 F 替换
    $search = array('A', 'B', 'C', 'D', 'E');
    $replace = array('B', 'C', 'D', 'E', 'F');
    $subject = 'A';
    echo str_replace($search, $replace, $subject);
     
    // 输出: apearpearle pear
    // 由于上面提到的原因
    $letters = array('a', 'p');
    $fruit  = array('apple', 'pear');
    $text  = 'a p';
    $output = str_replace($letters, $fruit, $text);
    echo $output;
    ?>
    
    

    更多关于PHP相关内容感兴趣的读者可查看本站专题:《php常用函数与技巧总结》、《php字符串(string)用法总结》、《PHP数组(Array)操作技巧大全》、《PHP基本语法入门教程》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》

    希望本文所述对大家PHP程序设计有所帮助。

    您可能感兴趣的文章:
    • C语言字符函数、内存函数功能及实现代码
    • C语言去除相邻重复字符函数的实现方法
    • PHP常用字符串函数用法实例总结
    • SQL SERVER2012中新增函数之字符串函数CONCAT详解
    • 深入了解C语言字符函数和字符串函数
    上一篇:PHP数组array类常见操作示例
    下一篇:Yii框架安装简明教程
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    php字符串函数 str类常见用法示例 php,字符串,函数,str,类,常见,