Что работает быстрее? fgetcsv или (fgets + explode) или (fgets + str_getcsv)

139
26 января 2020, 05:00
  1. Сам вопрос в заголовке, хотелось бы понять, что работает быстрее (fgetcsv или (fgets + explode) или (fgets + str_getcsv)).
  2. Столкнулся с такой проблемой, на вход получаю разные csv файлы, первая строка имеет описание полей, далее идут данные.

Иногда в csv файле у описаний полей, и/или у данных, может быть 1 лишний разделитель (в нашем случае ;).

Например:

name1;name2;name3;
data1;data2;data3

и т.д.

Хоте бы понять как это можно обойти при чтении, чтобы сильно на производительность не влияло?

Я сейчас использую fgetcsv. И получаются разные длины массивов (заголовка и данных) из-за лишнего разделителя.

Я предположил, что могу использовать fgets вместо fgetcsv и сделать rtrim($data, ";") после чего применить explode или str_getcsv.

READ ALSO
PHP вывод содержимое папки с аудио

PHP вывод содержимое папки с аудио

Не являюсь знатоком РНР, но появилась нужда кое-что делать\ asterisk под управлением freepbx записывает разговоры

92
Правильная разработка веб-сайта

Правильная разработка веб-сайта

Всем доброго времени сутокМного уже поработал с различными api

111
Не могу отправить SQL запросы циклом в PHP

Не могу отправить SQL запросы циклом в PHP

Если я делаю только один запрос вне цикла, то все замечательно работает, к примеру:

123
Двойной массив и вывод его

Двойной массив и вывод его

Пытаюсь сделать цикл со счетчикомНеобходимо сделать график кол-ва банов по времени unix, решил делать так:

126