【发布时间】:2016-02-09 14:32:15
【问题描述】:
我有以下带有分隔符的字符串数组 ':' 和 ';' (实际数据将是 1 个或多个字符串,每个字符串中有 5 个或多个相同的 Fieldname:value 对)
0 => string 'Fieldname1:value;Filedname2:value;Fieldname3:value;...'
1 => string 'Fieldname1:value;Filedname2:value;Fieldname3:value;...'
2 => string 'Fieldname1:value;Filedname2:value;Fieldname3:value;...'
当我将上述内容转换为 key => value 时,Filednames 会覆盖。所以我试图把它变成一个多维数组。我环顾四周,没有找到解决方案,需要一些帮助。
我使用了explode() 并做到了这一点:
foreach ($array as $line) {
$value[] = explode(';', $line);
}
var_dump($value);
array
0 =>
array =>
string 'Fieldname1:value'
string 'Filedname2:value'
string 'Fieldname3:value'
1 =>
array =>
string 'Fieldname1:value'
string 'Filedname2:value'
string 'Fieldname3:value'
2 =>
array =>
string 'Fieldname1:value'
string 'Filedname2:value'
string 'Fieldname3:value'
如何将它放入 key => 值中,例如:
array
0 =>
array =>
'Fieldname1' => 'value'
'Fieldname2' => 'value'
'Fieldname3' => 'value'
1 =>
'Fieldname1' => 'value'
'Fieldname2' => 'value'
'Fieldname3' => 'value'
2=>
'Fieldname1' => 'value'
'Fieldname2' => 'value'
'Fieldname3' => 'value'
【问题讨论】:
-
用
:的分隔符再次分解它
标签: php arrays string explode csv