php字符串 转数组有五种常用方法:一、explode()按分隔符分割;二、str_split()按字符长度拆分;三、preg_split()用 正则表达式 分割;四、str_word_count()提取单词;五、json_decode()解析 json 格式字符串。

如果需要将 PHP 中的字符串拆分为多个元素并存入数组,可以根据字符串的结构特征选择不同的内置函数。以下是几种常用的实现方式:
一、使用 explode()函数按分隔符分割
explode()函数适用于字符串中存在明确分隔符(如逗号、空格、竖线等)的情况,它将字符串按指定分隔符切开,并返回索引数组。
1、定义一个包含分隔符的字符串,例如$str = "apple,banana,orange";。
2、调用 explode() 函数,传入分隔符和字符串,如$arr = explode(",", $str);。
立即学习“PHP 免费学习笔记(深入)”;
3、结果数组 $arr 将包含三个元素:[‘apple’, ‘banana’, ‘orange’]。
二、使用 str_split()函数按字符长度拆分
str_split()函数用于将字符串按固定字符长度切割成数组,适用于需要逐字符或按 字节 块处理的场景。
1、声明字符串变量,例如$str = "hello";。
2、调用str_split($str),不指定长度时默认每个字符为一个元素。
3、若需每两个字符一组,可写为str_split($str, 2),结果为[‘he’, ‘ll’, ‘o’]。
三、使用 preg_split()函数按 正则表达式 分割
preg_split()支持使用正则表达式作为分隔逻辑,适合处理复杂分隔规则,如多种空白符、混合符号或忽略连续分隔符。
1、准备字符串$str = "a,b,,c";,其中包含空字段。
2、调用preg_split('/[,]+/', $str, -1, PREG_SPLIT_NO_EMPTY),以一个或多个逗号为界并过滤空项。
3、最终得到数组[‘a’, ‘b’, ‘c’]。
四、使用 str_word_count()函数提取单词数组
str_word_count()专门用于从字符串中提取符合“单词”定义的子串,默认依据 Unicode 字母和数字识别单词,忽略标点与空白。
1、设定字符串$str = "Hello, world! 123 test."; 。
2、执行$arr = str_word_count($str, 1);,参数 1 表示返回纯单词数组。
3、输出结果为[‘Hello’, ‘world’, ‘123’, ‘test’]。
五、使用 json_decode() 函数解析 JSON 格式字符串
当字符串本身是合法 json 数组 格式时,可直接通过 json_decode() 转换为 PHP 数组,要求字符串严格符合 JSON 语法。
1、确保字符串为标准 JSON 数组形式,例如$str = '["red", "green", "blue"]';。
2、调用 $arr = json_decode($str, true);,第二个参数true 确保返回 关联数组 而非 对象。
3、转换后得到数组[‘red‘, ‘green’, ‘blue’]。
以上就是