如何在 PHP 中在新行处分割字符串并将其放入数组


PHP 是什么?

PHP,代表超文本预处理器,是一种流行的用于 Web 开发的服务器端脚本语言。它旨在创建动态且交互的网页。PHP 嵌入在 HTML 代码中并在服务器上执行,生成发送到客户端浏览器的 HTML 输出。PHP 凭借其简单易学的语法,允许开发人员构建动态网站、处理表单数据、与数据库进行交互以及执行各种服务器端任务。它拥有庞大的库和框架生态系统,可以增强其功能并使开发人员能够创建健壮且可扩展的 Web 应用程序。PHP 得到托管服务提供商的广泛支持,使其成为 Web 开发项目的首选。

如何在 PHP 中在新行处分割字符串并将其放入数组

方法 1

使用 preg_split() 函数

PHP 中的 preg_split() 函数用于根据指定的正则表达式模式将字符串拆分为一个由子字符串组成的数组。它允许您根据特定条件将字符串分解为更小的部分。通过利用 preg_split() 的功能,您可以高效地根据灵活的模式分割字符串,从而能够以一种结构化的方式处理和操作 PHP 应用程序中的文本数据。

语法

preg_split() 函数的语法如下:

preg_split(pattern, string, limit = -1, flags = 0);
  • pattern:用于根据其分割字符串的正则表达式模式。

  • string:需要分割的输入字符串。

  • limit(可选):指定在结果数组中返回的最大元素数量。如果设为正值,则仅返回值中数量的元素。如果设为 0,将返回所有可能的元素。如果设为负值(默认值),则不设置限制。

  • flags(可选):指定用于修饰 preg_split() 函数行为的任何其他标志。

示例

<?php

// A php program to separate string
// using preg_split() function

// String which to be converted
$str = "Pradeep Menon
Arjit
Kavitha deshmukh
John Peter
Peterson"; // This function converts the string $arr= preg_split ('/
/', $str); // print the information of array print_r($arr); ?>

输出

Array
(
[0] => Pradeep Menon
[1] => Arjit
[2] => Kavitha deshmukh
[3] => John Peter
[4] => Peterson
)

代码说明

在此代码中,我们使用 preg_split() 函数,用换行符作为定界符将字符串分成一个数组。

输入字符串 $str 包含一个用换行符分隔的名称列表。然后,preg_split() 函数与正则表达式模式 /
/ 一起使用,以在每次出现换行符时分割字符串。

执行 preg_split() 函数后,结果数组 $arr 将单个名称作为其元素。最后,使用 print_r() 函数显示数组的内容。

总之,此代码片段获取一个用换行符分隔的名称字符串,应用 preg_split() 使用换行符作为定界符将其分割成一个数组,然后用分隔的名称打印结果数组。

方法 2

使用 explode() 函数

PHP 中的 explode() 函数用于根据指定的定界符将字符串分割成一个子字符串数组。它是 preg_split() 函数的一个更简单的替代方案,在处理简单的定界符时特别有用,例如单个字符或固定字符串。explode() 函数通常用于诸如解析 CSV 文件、从句子中提取各个单词或根据特定定界符分解字符串等场景中。它提供了一种直接而有效的方法来将字符串分割成更小的组件。

语法

explode() 函数的语法如下

explode(delimiter, string, limit = PHP_INT_MAX);
  • delimiter:指定用作定界符以分割输入字符串的字符串。

  • string:需要分割的输入字符串。

  • limit(可选):指定在结果数组中返回的最大元素数量。如果设置了,结果数组最多有 limit 个元素。

示例

下面是 explode() 函数的一个示例

<?php

// PHP program to separate string
// using explode function

// String which to be converted
$str = "Pradeep Menon
Ajith Lakshman
John Peter
Peterson"; // Function to convert string to array $arr = explode("
", $str); // Print the information of array print_r($arr); ?>

输出

Array
(
[0] => Pradeep Menon
[1] => Ajith Lakshman
[2] => John Peter
[3] => Peterson
)

代码说明

上述 PHP 代码片段演示了使用 explode() 函数将字符串分成一个数组,使用换行符(
)作为定界符。

输入字符串 $str 包含一个用换行符分隔的名称列表。然后,explode() 函数与换行符(
)作为定界符一起使用,将字符串分割成一个子字符串数组。执行 explode() 函数后,结果数组 $arr 将单个名称作为其元素。最后,使用 print_r() 函数显示数组的内容。

结论

总之,preg_split() 和 explode() 都是用于根据指定的定界符将字符串分割成数组的 PHP 函数。preg_split() 具有使用正则表达式作为定界符的优点,提供了更灵活的高级模式匹配功能。它适用于复杂的分割要求,其中定界符可以有所不同或遵循特定的模式。另一方面,explode() 更加简单和快速,适用于使用固定定界符(例如字符或字符串)进行简单的分割任务。在处理简单且可预测的定界符时,它是一种更有效的选择。

更新于: 31-Jul-2023

849 浏览量

提升你的 职业生涯

完成课程即可获得认证

开始吧
广告