我有一个字符串,它包含以下引号和逗号分隔的值:
"field","anotherfield","yetanotherfield"
我需要用这些字段的内容填充一个数组,不带引号。
我现在正在做的是:
$string = str_replace('"', NULL, $string);
和
$array = explode(',', $string);
它可以工作,但是当任何字段中有逗号时它就会中断。我该如何预防呢?
首先,从字符串的开始和结束处修剪"
。
$string = trim('"field","anotherfield","yetanotherfield","other, another"', '"');
和爆炸后的","
在你需要的值之间
$array = explode('","', $string);
要将整个CSV文件解析为数组,可以使用str_getcsv函数:
$array = array_map( 'str_getcsv', file( 'path-to-file/file.csv' ) );