Мой план состоял в том, чтобы обработать первую строку с их заголовками и соединить количество столбцов со столбцом нашей базы данных. имя. В настоящее время я сохраняю его как связанный массив. В приведенном ниже примере кода для краткости удалены некоторые значения регистра. Ассоциативный массив имеет количество столбцов в качестве ключа и имя в качестве значения.
Код: Выделить всё
if (($handle = fopen($guestData, "r")) !== FALSE) {
while (($data = fgetcsv($handle, 10000, ",")) !== FALSE) {
$num = count($data);
$myArray = array();
for ($c=0; $c < $num; $c++) {
switch ($data[$c]) {
case 'Customer ID':
$myArray += [$c => "operatorBookingID"];
break;
case 'Customer Name':
$myArray += [$c => "guestName"];
break;
case 'Country':
$myArray += [$c => "nationality"];
break;
case 'Phone number':
$myArray += [$c => "phone"];
break;
'
'
'
}
}
}
Код: Выделить всё
Array ( [3] => guestName [4] => nationality [5] => phone etc etc )
отредактировано
Предыдущая проблема с ошибкой была решена благодаря второму комментарию о слишком раннем закрытии потока скриптом.
Подробнее здесь: https://stackoverflow.com/questions/793 ... sequent-ro