Nic*_*iwi 20 php string explode
我需要在逗号中将我的字符串输入分解为数组.但是该字符串在引号内包含逗号.
输入:
$line = 'TRUE','59','A large number is 10,000';
$linearray = explode(",",$line);
$linemysql = implode("','",$linearray);
Run Code Online (Sandbox Code Playgroud)
返回$ linemysql为:
'TRUE','59','A large number is 10','000'
Run Code Online (Sandbox Code Playgroud)
我怎样才能完成这个,爆炸忽略引号内的逗号?
Rus*_*ias 56
由于您使用的是逗号分隔值,因此可以使用str_getcsv
.
str_getcsv($line, ",", "'");
Run Code Online (Sandbox Code Playgroud)
将返回:
Array
(
[0] => TRUE
[1] => 59
[2] => A large number is 10,000
)
Run Code Online (Sandbox Code Playgroud)
看来你不想用逗号分隔你的字符串,而是用引号+逗号+引号连续?
如果是这样preg_split
,这里的功能可能会有所帮助.
例如,使用这部分代码:
$line = "'TRUE','59','A large number is 10,000'";
$parts = preg_split("/','/", $line);
var_dump($parts);
Run Code Online (Sandbox Code Playgroud)
我得到以下输出:
array
0 => string ''TRUE' (length=5)
1 => string '59' (length=2)
2 => string 'A large number is 10,000'' (length=25)
Run Code Online (Sandbox Code Playgroud)
从那开始,现在是$line
在调用之前删除字符串的第一个和最后一个引号的问题preg_split
- 因为它们是分隔符,并且与分割模式不匹配.