|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
24.03.2010, 01:46 | #1 |
Регистрация: 24.03.2010
Сообщений: 4
|
Php. Построчное чтение из файла в массив
Люди добры помогите, а то голову совсем поломаю
задача у меня такая нарисовалась: есть файл, условно говоря, с товаром (прайс) надо его как-то прочитать и построчно отдать на выполнение различным функциям по обработке. пример: ТОВАР 1 ; описание ; цена параметр какой-то нужный модель 1; параметры модель 2; параметры [разделитель] ТОВАР 2 ; описание ; цена параметр какой-то нужный модель 1; параметры модель 2; параметры модель 3; параметры модель 4; параметры [разделитель] ТОВАР 3; описание ; цена параметр какой-то нужный модель 1; параметры ... у каждой строки различное кол-во данных, но неизменны остаются первые 2 строки, строки с "моделями" меняются и параметры у низ тоже разные могут быть. Поэтому я думаю, что каждую строку нужно отдавать на обработку отдельной функции - это не проблема. проблема в том, как организовать эту "отдачу".... Последний раз редактировалось Leshiy80; 24.03.2010 в 01:48. |
24.03.2010, 11:31 | #2 |
Форумчанин
Регистрация: 04.08.2009
Сообщений: 684
|
А наработки уже какие-то есть? Можно посмотреть?
Еслия Вам помог, не поленитесь нажать на весы и оставить отзыв. Это не займет много времени, но даст понять, что я старался не зря =)
Мой ник зарегистрирован, а твой? |
24.03.2010, 11:46 | #3 |
Регистрация: 24.03.2010
Сообщений: 4
|
ну какие наработки, если я не знаю с какого бока подойти?
Вообще это у меня целая история. Сначала я экселевский файл с прайсом сохраняю как csv потом обрабатываю, удаляя лишнее и как раз привожу квышеописанному виду... -этобыл первый этап второй- то чего я не знаю как сделать... треттий -после передечи строк различным функциям - заношу в БД. ---- как я понимаю нужно "цепляться" за разделитель типа, выполнять пока он не попадтся,нопотом нужно снова запускать в цикл... не знаю... |
24.03.2010, 17:02 | #4 |
Пользователь
Регистрация: 02.08.2008
Сообщений: 94
|
Попробуйте функцию explode(). Она как раз по разделителю работает.
|
30.03.2010, 02:17 | #5 |
Пользователь
Регистрация: 30.06.2008
Сообщений: 10
|
Как вариант:
Команда file() считывает содержимое файла и построчно записывает в массив. $array = file("filename.txt"); Ну а дальше уже работаете в цикле с каждым элементом массива. |
01.04.2010, 15:12 | #6 |
Регистрация: 24.03.2010
Сообщений: 4
|
А что дальше?
как отправить каждый элемент полученного массива на исполнение? И потом, это же нужно как-то "зациклить"... |
01.04.2010, 17:13 | #7 |
Старожил
Регистрация: 09.09.2008
Сообщений: 2,624
|
1)открывает файл - fopen
2)в цикле читатете его построчно - fgets 3)пишете строки в 2мерный массив $tov[0][<имя параметра>], если в строке есть ; то делаете explode 4)если результат fgets==<разделитель>, создаете новый елемент массива $tov[1] 5)и так до конца файла и получаем массив с парметрами
Стрелок-охотник
|
01.04.2010, 17:44 | #8 |
Программист
Форумчанин
Регистрация: 27.02.2009
Сообщений: 505
|
mv28jam, в каждой строке наверняка есть "\n". Таким образом всегда разбиваю файлы на строки.
P.S. это была поправка к пункту 3.
there are no limits when you're software engineer
|
02.04.2010, 11:36 | #9 |
Старожил
Регистрация: 09.09.2008
Сообщений: 2,624
|
Не понял сути поправки. Зачем мне разбивать строку, если я пользуюсь fgets'ом я и так получу 1 строку.
Стрелок-охотник
|
30.10.2014, 12:45 | #10 |
Квадрокоптерист
Участник клуба Подтвердите свой е-майл
Регистрация: 29.09.2007
Сообщений: 1,824
|
Возьмите библиотеку PHPExcel http://phpexcel.codeplex.com/ и не будет у вас ни каких проблем. Зачем переводить в CSV потом что то чистить вообще не понимаю.
Я часть той силы, что вечно хочет зла, но вечно совершает благо..
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Чтение из файла (С) | spirit_trapper | Помощь студентам | 4 | 26.05.2010 19:37 |
Запрет на чтение .php файла | Linel | PHP | 3 | 10.03.2010 18:15 |
Чтение из файла. Си. | MAKEDON | Помощь студентам | 1 | 17.08.2009 16:42 |
Построчное чтение из файла | Mihalich1988 | Общие вопросы C/C++ | 5 | 17.12.2008 02:10 |
Чтение фрагмента файла в динамический массив. | ZeroCool. | Общие вопросы Delphi | 2 | 02.11.2007 08:14 |