我想要做的是使用以下方法将47kb csv文件插入到数组中。
CSV结构:
ID; TEXT;整数; VARCHAR(1)
示例:1;随机文本; 0; Q
但我在CSV文件中有多个ID,因为这是一个问答表,对于每个问题,答案都有相同的问题ID。
我假装要做的是将CSV文件导入一个数组,然后在VARCHAR字段中搜索该数组中的Q,然后计算该问题的数量(Q =问题,A =答案)。
例如,我将选择5个问题,然后获取它们的ID并获得比较正确/错误的答案。
此时我只想导入CSV文件并搜索问题......
如何以导入后搜索某些值的方式将CSV导入数组?
我希望我详述一切是可以理解的。
谢谢。
操作系统:Linux
语言:PHP 5.4
答案 0 :(得分:1)
$csvArray = file('file.csv');
$base = array('Q' => array(), 'A' => array());
foreach ($csvArray as $line) {
$lineArray = explode(';', $line);
//$lineArray[0] - ID
//$lineArray[1] - text
//$lineArray[2] - number
//$lineArray[3] - type
if ($lineArray[3] === 'Q') {
$base['Q'][$lineArray[0]] = array(
'text' => $lineArray[1],
'number' => $lineArray[2]
);
} elseif ($lineArray[3] === 'A') {
$base['A'][$lineArray[0]][] = array(
'text' => $lineArray[1],
'number' => $lineArray[2]
);
}
}
//all questions - $base['Q']
//question item - $base['Q'][ID-question]
//all answers for ID-question - $base['A'][ID-question]