Heim >php教程 >php手册 >PHP explode()函数的几个应用

PHP explode()函数的几个应用

WBOY
WBOYOriginal
2016-06-13 09:39:031108Durchsuche

explode()函数介绍

explode() 函数可以把字符串分割为数组。

语法:explode(separator,string,limit)。

  • separator,必需。规定在哪里分割字符串。
  • string,必需。要分割的字符串。
  • limit,可选。规定所返回的数组元素的最大数目。

本函数返回由字符串组成的数组,其中的每个元素都是由 separator 作为边界点分割出来的子字符串。

separator 参数不能是空字符串。如果 separator 为空字符串(""),explode() 将返回 FALSE。如果 separator 所包含的值在 string 中找不到,那么 explode() 将返回包含 string 中单个元素的数组。

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

如果 limit 参数是负数,则返回除了最后的 -limit 个元素外的所有元素。此特性是 PHP 5.1.0 中新增的。

Program List:explode()例子

    
<?php
// Example 1
$fruit  = "Apple Banana Orange Lemon Mango Pear";
$fruitArray = explode(" ", $fruit);
echo $fruitArray[0]; // Apple
echo $fruitArray[1]; // Banana
// Example 2
$data = "gonn:*:bkjia:1000::/home/foo:/bin/sh";
list($user, $pass, $uid, $gid, $gecos, $home, $shell) = explode(":", $data);
echo $user; // gonn
echo $pass; // *
?>

程序运行结果:

Apple
Banana
gonn
*

Program List:使用limit参数的explode()例子

    
<?php
$str = 'one|two|three|four';
// positive limit
print_r(explode('|', $str, 2));
// negative limit (since PHP 5.1)
print_r(explode('|', $str, -1));
?>

程序运行结果:

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

Program List:将字符串化为键值数组

    
<?php
// converts pure string into a trimmed keyed array
function string2KeyedArray($string, $delimiter = ',', $kv = '=>') {
  if ($a = explode($delimiter, $string)) { // create parts
    foreach ($a as $s) { // each part
      if ($s) {
        if ($pos = strpos($s, $kv)) { // key/value delimiter
          $ka[trim(substr($s, 0, $pos))] = trim(substr($s, $pos + strlen($kv)));
        } else { // key delimiter not found
          $ka[] = trim($s);
        }
      }
    }
    return $ka;
  }
} // string2KeyedArray
$string = 'a=>1, b=>23, $a, c=>45%, true, d=>ab c';
print_r(string2KeyedArray($string));
?>

程序运行结果:

Array 
( 
	[a] => 1 
    [b] => 23 
    [0] => $a 
    [c] => 45% 
    [1] => true 
    [d] => ab c 
)
Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Vorheriger Artikel:安全的PHP代码编写准则Nächster Artikel:PHP日期格式转时间戳