php, while как понять, что цикл бежит последний раз

Как понять, что цикл бежит последний раз?

У меня есть данный PHP код

    if ($files['filename']['type'] != 'text/csv') {
        return array(
            'result' => false,
            'message' => 'invalid file type'
        );
    }

    $file = $files['filename']['tmp_name'];
    $handle = fopen($file, "r");

    $i = 0;
    $likeStringForSelect = '';
    $likeStringForSelectToUpdate = '';
    $quote = Mage::getSingleton('core/resource')->getConnection('default_write');
    //create sql and array data
    while (($data = fgetcsv($handle, 10000, ",")) !== FALSE) {
        if ($i > 0) {
            $title = $quote->quote($data[38]);
            $seller_name = $quote->quote($data[69]);
            //TODO IF последний цыкл - уберать OR
            $likeStringForSelect .= ' OR item_id LIKE ' . "'" . $data[1] . "%'";
            $likeStringForSelectToUpdate .=  "(title LIKE $title AND item_id LIKE \"{$data[1]}%\" AND seller_name LIKE $seller_name ) OR ";
            //1 - item_id, 38 - title ,50 - item qty , 55 - cost , 27 - tracking number, 69 - seller name, 0 - order date
            if ($data[27] != '') $status = 'Shipped';
            else $status = 'Not shipped';

            $arrayDataFromCsv[] = array($data[1], $data[38], $data[50], $data[55], $data[27], $status, $data[0], $data[69]);
        }
        $i++;
    }

Ответы (1 шт):

Автор решения: Сергей Коновалов

к примеру, так

$data =  fgetcsv($handle, 10000, ",");
while ($data) {
    /*your code here*/
    $data =  fgetcsv($handle, 10000, ",");
    if (!$data) {
        /*the last cycle iteration*/
    }
}
→ Ссылка