我运行一个循环来插入csv文件中的列.csv文件包含一个值为
的列India
srilanka
china taiwan
USA UK France
china japan
我使用preg_split函数拆分列,基于空格
进行拆分preg_split('/\s+/', $countries);
分裂后我得到像这样的输出
Array
(
[0] => India
)
Array
(
[0] => srilanka
)
Array
(
[0] => USA
[1] => UK
[2] => France
)
Array
(
[0] => china
[1] => japan
)
如果每个数组包含多个值,则它应该附加第二个和第三个数组,其中包含左右括号
我希望最终值为
india
srilanka
USA(UK France)
China(japan)
答案 0 :(得分:2)
我认为这可以满足您的需求。这将每行作为参数,而不是数组。所以你不必做preg_split:
function split_countries($line) {
$split = explode(" ", $line);
$ret = array_shift($split);
if (count($split)) {
$ret .= "(" . implode(" ", $split) . ")";
}
return $ret;
}
echo split_countries("India") . "\n";
echo split_countries("USA UK France") . "\n";