@pavlikmd

Как разбить строчки с файла по разделителям в массив?

Есть файл .txt примера
data1;
data2;
data3;
data4;
data5;
data6;
data7;
-----
data1;
data2;
data3;
data4;
data5;
data6;
data7;
-----
data1;
data2;
data3;
data4;
data5;
data6;
data7;


и так может быть еще пару блоков.
В этом файле php должен разбивать на строки текст до ";" и до конца блока "-----", а потом занести в базу как новую строку.

То есть в базе после импорта этого файла должно появится 3 строки, с данными по 7 столбиков. Как
такое правильно это сделать ?

p.s. На первый взгляд можно подумать что это 3 одинаковых блока) Нет, просто мне было лень переписывать, я просто сделал копипастом и обьяснил суть )
  • Вопрос задан
  • 309 просмотров
Решения вопроса 1
Stalker_RED
@Stalker_RED
$data = explode('-----', $input); // разбиваем по "-----"

$data = array_map(
  function($row) {
      $row = explode(';', $row); // разбиваем по точке с запятой
      $row = array_map("trim", $row); // убираем лишние пробелы и переводы строк
      $row = array_filter($row, function($val){return !empty($val);}); // убираем пустые значения
      return $row;
  }, $data);
https://ideone.com/fhpcoR
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы