php字符串转数组操作_php字符分割成数组技巧【指南】

12次阅读

PHP 字符串转数组有五种方法:一、explode()按固定分隔符分割;二、str_split()按字符长度分割;三、preg_split()用正则表达式分割;四、str_word_count()提取单词;五、mb_split()处理多字节字符。

php 字符串转数组操作_php 字符分割成数组技巧【指南】

如果您需要将 PHP 中的字符串按照特定规则拆分为数组元素,则可能是由于字符串中包含分隔符或需要按字符逐一分割。以下是实现此目标的多种方法:

一、使用 explode()函数按分隔符分割

explode()函数根据指定的分隔符将字符串切割为数组,适用于已知固定分隔符的场景,如逗号、空格或竖线等。

1、定义一个包含分隔符的字符串,例如 $str = “apple,banana,orange”;

2、调用 explode() 函数,传入分隔符和字符串:$arr = explode(“,”, $str);

立即学习PHP 免费学习笔记(深入)”;

3、结果数组 $arr 将包含三个元素:[“apple“, “banana”, “orange”]

4、若分隔符在字符串开头或结尾出现多次,explode() 会生成空字符串元素,需配合 array_filter() 清理空值

二、使用 str_split()函数按字符长度分割

str_split()函数可将字符串按指定长度切分为子 字符串数组,当需要等长分组或逐字符处理时尤为适用。

1、定义字符串,例如 $str = “abcdef”;

2、调用 str_split($str, 2),表示每两个字符一组

3、返回数组为 [“ab”, “cd”, “ef”]

4、若省略第二个参数,则默认每个字符为一个元素,此时等效于将字符串完全展开为字符数组

三、使用 preg_split()函数按 正则表达式 分割

preg_split()支持使用正则表达式作为分隔逻辑,适用于复杂分隔规则,如多个空白字符、混合符号或忽略大小写的分隔。

1、定义字符串,例如 $str = “onettwonthree four”;

2、调用 preg_split(‘/[sW]+/’, $str, -1, PREG_SPLIT_NO_EMPTY)

3、该正则匹配任意空白符或非单词字符,并跳过空结果

4、必须添加 PREG_SPLIT_NO_EMPTY 标志以避免产生空数组项

四、使用 str_word_count()函数提取单词数组

str_word_count()专用于从字符串中提取符合“单词”定义的片段,默认依据字母数字和下划线进行识别,适合文本内容分析。

1、定义字符串,例如 $str = “Hello world! 123 test_abc”;

2、调用 str_word_count($str, 1) 获取纯单词数组

3、返回结果为 [“Hello”, “world”, “123”, “test_abc”]

4、若需保留原始位置信息,可使用参数 2 替代 1,返回关联数组

五、使用 mb_split()函数处理多 字节 字符

mb_split()是针对多字节 编码(如 UTF-8)设计的正则分割函数,可安全处理中文、日文等非 ASCII 字符。

1、确保已启用 mbstring 扩展,否则调用失败

2、定义含中文的字符串,例如 $str = “苹果| 香蕉 | 橙子 ”;

3、调用 mb_split(‘|’, $str),注意分隔符需转义

4、必须显式指定编码,如 mb_split(‘|’, $str, ‘UTF-8’)

以上就是

text=ZqhQzanResources