从字符串中提取每个单词的最佳方法是什么:
one, two, "big three", four, "seven and eight"
用双引号括起来的那些应该被视为一个单独的元素:
array("one", "two", "big three", "four", "seven and eight")
答案 0 :(得分:3)
您应该使用CSV解析器,而不是自己滚动。 PHP具有内置函数,可以完全按照您的需要进行操作 - str_getcsv
:
$tags = str_getcsv($string);
foreach($tags as $tag) {
...
}
请注意,这需要PHP 5.3。 “用户提供的注释”显示了许多解决方法。
答案 1 :(得分:0)
你可以使用:
$tags = explode(',', $string);
foreach($tags as &$tag)
{
$tag = trim($tag);
}
(未检查代码)
答案 2 :(得分:0)
如果您使用的是php> = 5.3,那么您将拥有str_getcsv函数。
$tags = str_getcsv($tags, ',', '"', '\\');
$tags = array_map('trim', $tags);