php字符串分割函数的总结

九月 14, 2019 | views
Comments 0

在php中字符串分割函数有很多很多,下面我来给各位朋友来介绍各种php中字符串分割实例,有需要的朋友可进入参考参考.

PHP函数split()的基本语法为:array split ( string $pattern, string $string [, int $limit] ).

例,代码如下:

  1. <?php 
  2. list($user$pass$uid$gid$extra) =  split (":"$passwd_line, 5);   
  3. ?> 

解析可能用斜线,点,或横线分割的日期,代码如下:

  1. <?php  
  2.    // 分隔符可以是斜线,点,或横线  
  3.    $date = "04/30/1973";   
  4.    //开源软件:phpfensi.com 
  5.    list($month$day$year) = split ('[/.-]'$date);  
  6.    echo "Month: $month; Day: $day; Year: $year<br />n"
  7. ?> 

str_split() 函数

如果指定了可选的 split_length 参数,返回数组中的每个元素均为一个长度为 split_length 的字符块,否则每个字符块为单个字符.

如果 split_length 小于 1,返回 FALSE,如果 split_length 参数超过了 string 超过了字符串 string 的长度,整个字符串将作为数组仅有的一个元素返回,代码如下:

  1. <?php 
  2. $str = "Hello Friend"
  3. $arr1 = str_split($str); 
  4. $arr2 = str_split($str, 3); 
  5. print_r($arr1); 
  6. print_r($arr2); 
  7. ?> 
  8. // 以上例程会输出 
  9. Array 
  10.     [0] => H 
  11.     [1] => e 
  12.     [2] => l 
  13.     [3] => l 
  14.     [4] => o 
  15.     [5] => 
  16.     [6] => F 
  17.     [7] => r 
  18.     [8] => i 
  19.     [9] => e 
  20.     [10] => n 
  21.     [11] => d 
  22. Array 
  23.     [0] => Hel 
  24.     [1] => lo 
  25.     [2] => Fri 
  26.     [3] => end 

chunk_split()函数

string chunk_split ( string $body [, int $chunklen [, string $end ]] )

使用此函数将字符串分割成小块非常有用,例如将 base64_encode() 的输出转换成符合 RFC 2045 语义的字符串,它会在每 chunklen(默认为 76)个字符后边插入 end(默认为“ ”),此函数会返回新的字符串,而不会修改原有字符串。

Example #1 chunk_split() 例子代码如下:

  1. <?php 
  2. // 使用 RFC 2045 语义格式化 $data 
  3. $new_string = chunk_split(base64_encode($data)); 
  4. ?> 

explode — 使用一个字符串分割另一个字符串,代码如下:

  1. <?php 
  2. // 示例 1 
  3. $pizza  = "piece1 piece2 piece3 piece4 piece5 piece6"
  4. $pieces = explode(" "$pizza); 
  5. echo $pieces[0]; // piece1 
  6. echo $pieces[1]; // piece2 
  7. // 示例 2 
  8. $data = "foo:*:1023:1000::/home/foo:/bin/sh"
  9. list($user$pass$uid$gid$gecos$home$shell) = explode(":"$data);//开源软件:phpfensi.com 
  10. echo $user// foo 
  11. echo $pass// * 
  12. ?>



zend