原文: PHP Explode – How to Split a String into an Array
PHP explode()
函数将一个字符串转换为一个数组。字符串中的每个字符都有一个索引,从 0 开始。与内置的 imlode()
函数一样,explode()
函数不修改数据(字符串)。
explode() 函数的语法
explode()
函数接收三个参数:
- 分隔符
- 要转换为数组的字符串
- 返回的数组元素的最大数目
完整的语法看起来像这样:
explode(separator, string, limit)
implode()
即使没有分隔符,也能工作,而 explode()
函数没有分隔符就不会工作。所以,就像字符串分割成数组一样,分隔符是必须的。你可以使用 limit
参数来指定期望的数组数量。它是可选的。
implode() 的例子
比方说,我有一个字符串 “Hello World”。如果将该字符串传入 explode()
函数,Hello
在数组中的索引为 0,World
的索引为1。 记住,数组使用基于 0 的索引。
$str = "Hello world";
$newStr = explode(" ", $str);
// 我们在打印一个字符串,所以我们可以使用 print_r()
print_r($newStr);
如果你在 explode()
函数中指定了一个限制,那么 index(es) 将不会超过这个数字。例如,如果你指定 2,所有的字符串都会显示出来,但索引不会超过 2。
$str = "CSS, HTML, PHP, Java, JavaScript";
$newStr = explode(" ", $str, 2);
// 我们在打印一个字符串,所以我们可以使用 print_r()
print_r($newStr);
你可以看到,第一个元素的索引为 0,其余的逗号分隔的元素的索引为 1,该索引不超过指定的 2 的限制。
explode()
函数查看字符串中的空格,将字符串分割成一个数组。如果你把两个不同的字打在一起,它们会被视为一个。
$str = "CSS HTMLPHP Java JavaScript";
$newStr = explode( " ", $str);
// 我们在打印一个字符串,所以我们可以使用 print_r()
print_r($newStr);
你可以看到,HTML 和 PHP 被打印在一起,因为它们之间没有空格。
小结
这篇文章向你展示了如何在 PHP 中使用 explode()
函数。
注意,与 implode()
不需要分隔符就能工作不同,分隔符在 explode()
中是非常重要的。如果不指定分隔符,explode()
将不能按所期望的工作。
$str = "CSS, HTML, PHP, Java, JavaScript";
$newStr = explode($str, 2);
// 我们在打印一个字符串,所以我们可以使用 print_r()
print_r($newStr);
如果你将分隔符设置为一个空字符串,你会得到错误:
谢谢你阅读本文。