2014-06-18 5 views
0

Я пытаюсь получить данные столбцов из файла csv. Первые два столбца возвращают штраф, но по какой-то причине я получаю Notice: Undefined offset: 2, когда пытаюсь ссылаться на третий столбец данных csv. Вот то, что я считаю соответствующий код в вопросе:PHP получение данных csv, неопределенная ошибка смещения

$handle = fopen($csv_file, 'r'); 

while(($fileop = fgetcsv($handle,1024, $delimiter)) !== false) { 
    echo $fileop[0]."<br/>"; 
    echo $fileop[1]."<br/>"; 
    echo $fileop[2]."<br/>"; //error occurs this line 
} 

CSV-текстовый файл:

THE GOLD CONNECTION,1760,2014-06-01 
PINEFOREST JEWELRY,3034.25,2014-06-05 
AMBERS DESIGN,2034.75,z 
GOLD FALCON CUSTOM JEWELERS (PORT),78, 
SUE'S JEWELRY,120, 
JC JEWELERS,274, 
ALTER'S GEM JEWELRY,74, 
STALL JEWELERS,38, 
ELEGANT JEWELERS,174, 
ELEGANT JEWELERS,206, 
SALEM'S JEWELERS,406, 

Как это исправить? Заранее спасибо

+0

* Хм ... * Вы не заканчивается запятые для первых трех, а затем остальные делают. –

+0

хорошо! leme исправить, что – bsapaka

+0

@ Fred-i-commas, похоже, не имеет эффекта – bsapaka

ответ

1

Используйте array_key_exists, чтобы проверить, что третий индекс существует:

while(($fileop = fgetcsv($handle,1024, $delimiter)) !== false) { 
    echo $fileop[0]."<br/>"; 
    echo $fileop[1]."<br/>"; 
    echo array_key_exists(2, $fileop) ? $fileop[2]."<br/>" : "<br/>"; //error occurs this line 
} 
Смежные вопросы