Сорри, это я перепутал с другой задачей, про чтение последней строчки. Тут тормозов не будет.
Но опять же, seek будет работать правильно только если в данных отсутствуют переводы строк.
Тимур Мамедов Это только для обезьяны легче заменить массив на переменную (при том что ни одной переменной в этом коде нет).
И для сельского дурачка, который хочет вайти.
А для человека, который хочет "обучаться программированию", важно именно разобраться.
У РНР задача прочитать одну строку, а здесь задача пропустить много => читать сразу много
"сложная" база vs. "после каждой запрашиваешь текущую позицию в файле, сохраняя полученные числа в массив, который сохраняешь и пользуешься" - это какая-то марсианская логика
а, да - рекомендация читать приблизительную строку очень забавная. ну какая, действительно, разница - 999 строка попадётся, или 1005-я :)
если уж извращаться, то читать блоками и считать переводы строк
но опять же - это только в предположении что символ перевода строки в каждой строке csv только один
1,"у попа была собака
он ее любил","в землю закопал, надпись написал""у попа была собака""",222
2,"она съела кусок мяса
он её убил","в землю закопал, надпись написал""у попа была собака""",333