Php 分解逗号分隔的值(带空格或不带空格)
表单上的输入字段接受逗号分隔的值列表 无论用户输入的值在每个逗号后加空格:Php 分解逗号分隔的值(带空格或不带空格),php,Php,表单上的输入字段接受逗号分隔的值列表 无论用户输入的值在每个逗号后加空格:1、2、3还是不加1、2、3,我如何将这些值转换为数组 基本上我想合并 $myArray=explode(',',$myString) 和 $myArray=explode(',',$myString)据我所知,分解后需要修剪值。您可以使用分解和修剪和数组映射 $input= 'one, two, three'; $v = explode(',', $input); $v = array_map('trim', $v);
1、2、3
还是不加1、2、3
,我如何将这些值转换为数组
基本上我想合并
$myArray=explode(',',$myString)代码>
和
$myArray=explode(',',$myString)代码>据我所知,分解后需要修剪值。您可以使用分解
和修剪
和数组映射
$input= 'one, two, three';
$v = explode(',', $input);
$v = array_map('trim', $v);
var_dump($v);
输出
array(3) {
[0]=>
string(3) "one"
[1]=>
string(3) "two"
[2]=>
string(5) "three"
}
您必须尝试以下代码:
$myString = "one, two, three";
$myArray = explode(',', $myString);
$trimmed_myArray = array_map('trim',$myArray);
print_r($trimmed_myArray);
当字符串中的值分隔符是可变的时,preg_split()
提供了一个简单、直接的过程
代码:()
输出:
array (
0 => 'one',
1 => 'two',
2 => 'three',
3 => 'four',
4 => 'five',
5 => 'six',
6 => 'seven',
)
这是一个干净的解决方案,因为它不需要任何字符串准备或拆分后迭代“清理”。一个函数调用就可以完成这一切
模式仅在逗号后加一个可选空格(?
表示前面空格的出现次数为零或一次)。您必须使用explode
而不是inbode
。可能/,\s*?/
是一个更好的正则表达式,因为提供的字符串可能在逗号后有空格,也可能没有空格。如果您的情况可能还有制表符或换行符(\t,
\r,
\n),则可以使用
\s)。如果您的情况可能有零个或多个空白字符(而不是零个或一个),则使用
*`量词。在这种情况下修改?
量词没有任何好处。
array (
0 => 'one',
1 => 'two',
2 => 'three',
3 => 'four',
4 => 'five',
5 => 'six',
6 => 'seven',
)