php数组与字符串的转换函数

导语 在php中我们要把字符串转换在数组可使用函数有str_split(),explode(),preg_split()函数了,如果把数组转换在字符串我们也有一个函数implode()函数与直接把数组连接起来。字符串转换数组str_split 将一个字符串
在php中我们要把字符串转换在数组可使用函数有str_split(),explode(),preg_split()函数了,如果把数组转换在字符串我们也有一个函数implode()函数与直接把数组连接起来。

字符串转换数组

str_split

   将一个字符串转换为数组。

array str_split ( string $string [, int $split_length = 1 ] )

string

输入字符串。

split_length

每一段的长度。

返回值

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

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

  1. <?php 
  2.  
  3. $str  =  "Hello Aseoe" ; 
  4.  
  5.  $arr1  =  str_split ( $str ); 
  6.  $arr2  =  str_split ( $str ,  3 ); 
  7.  
  8.  print_r ( $arr1 ); 
  9.  print_r ( $arr2 ); 
  10.  
  11.  ?>  

explode

   使用一个字符串分割另一个字符串

array explode ( string $delimiter , string $string [, int $limit ] )

此函数返回由字符串组成的数组,每个元素都是 string 的一个子串,它们被字符串 delimiter 作为边界点分割出来。

参数

delimiter

边界上的分隔字符。

string

输入的字符串。

limit

如果设置了 limit 参数并且是正数,则返回的数组包含最多 limit 个元素,而最后那个元素将包含 string 的剩余部分。

如果 limit 参数是负数,则返回除了最后的 - limit 个元素外的所有元素。

如果 limit 是 0,则会被当做 1。

 

由于历史原因,虽然 implode() 可以接收两种参数顺序,但是 explode() 不行。你必须保证 separator 参数在 string 参数之前才行。

返回值

此函数返回由字符串组成的 array ,每个元素都是 string 的一个子串,它们被字符串 delimiter 作为边界点分割出来。

如果 delimiter 为空字符串(""), explode() 将返回 FALSE 。 如果 delimiter 所包含的值在 string 中找不到,并且使用了负数的 limit , 那么会返回空的 array , 否则返回包含 string 单个元素的数组。 

  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.  
  8. // 示例 2 
  9.  $data  =  "foo:*:1023:1000::/home/foo:/bin/sh" ; 
  10. list( $user ,  $pass ,  $uid ,  $gid ,  $gecos ,  $home ,  $shell ) =  explode ( ":" ,  $data ); 
  11. echo  $user ;  // foo 
  12.  echo  $pass ;  // * 
  13.  
  14.  ?>  

preg_split

   
通过一个正则表达式分隔字符串

array preg_split ( string $pattern , string $subject [, int $limit = -1 [, int $flags = 0 ]] )

通过一个正则表达式分隔给定字符串.

参数

pattern

用于搜索的模式,字符串形式。

subject

输入字符串

limit

如果指定,将限制分隔得到的子串最多只有 limit 个,返回的最后一个 子串将包含所有剩余部分。 limit 值为-1, 0或null时都代表"不限制", 作为php的标准,你可以使用null跳过对 flags 的设置。

flags

flags 可以是任何下面标记的组合(以位或运算 | 组合):

PREG_SPLIT_NO_EMPTY
如果这个标记被设置, preg_split() 将进返回分隔后的非空部分。
PREG_SPLIT_DELIM_CAPTURE
如果这个标记设置了,用于分隔的模式中的括号表达式将被捕获并返回。
PREG_SPLIT_OFFSET_CAPTURE

如果这个标记被设置, 对于每一个出现的匹配返回时将会附加字符串偏移量. 注意:这将会改变返回数组中的每一个元素, 使其每个元素成为一个由第0 个元素为分隔后的子串,第1个元素为该子串在 subject 中的偏移量组成的数组。

 

返回值

返回一个使用 pattern 边界分隔 subject 后得到 的子串组成的数组。 

  1. <?php 
  2.  //使用逗号或空格(包含" ", \r, \t, \n, \f)分隔短语 
  3.  $keywords  =  preg_split ( "/[\s,]+/" ,  "hypertext language, programming" ); 
  4.  ?>  

数组转换在字符串

implode()
  
 函数把数组元素组合为一个字符串。

 

语法

implode(separator,array)
参数 描述
separator 可选。规定数组元素之间放置的内容。默认是 ""(空字符串)。
array 必需。要结合为字符串的数组。

说明

虽然 separator 参数是可选的。但是为了向后兼容,推荐您使用使用两个参数。

提示和注释

注释:implode() 可以接收两种参数顺序。但是由于历史原因,explode() 是不行的。你必须保证 separator 参数在 string 参数之前才行。

  1. <?php 
  2.  
  3. $arr = array('Hello','World!','Beautiful','Day!'); 
  4. echo implode(" ",$arr); 
  5. ?> 



 

https://www.nucmc.com/ true php数组与字符串的转换函数 https://www.nucmc.com/show-21-510-1.html report 5324.5 在php中我们要把字符串转换在数组可使用函数有str_split(),explode(),preg_split()函数了,如果把数组转换在字符串我们也有一个函数implode()函数与直接把数组连接起来。字符串转换数组str_split 将一个字符串
TAG:php 数组 字符串
本站欢迎任何形式的转载,但请务必注明出处,尊重他人劳动成果
转载请注明: 文章转载自:BETWAY官网网 https://www.nucmc.com/show-21-510-1.html
BETWAY官网网 Copyright 2012-2014 www.nucmc.com All rights reserved.(晋ICP备13001436号-1)