Консультация № 62561
14.11.2006, 10:39
0.00 руб.
0 4 3
Здравствуйте,
Пожалуйста подскажите про время жизни переменных.
Такая ситуация, при первом запуске скрипта считывается текстовый файл и обрабатывается (прайс лист). Далее выводится на экран первые 20 строчек прайса и ссылки на следующий 20 строчек.
Вопрос - при переходе по ссылке "следующие 20" мне нужно поновому
считывать файл и обрабатывать его??

Обсуждение

Неизвестный
14.11.2006, 10:48
общий
это ответ
Здравствуйте, Nikk!
Есть вариант: запоминайте дату изменения исходного файла, генерируйте сразу ВСЕ страницы по 20 строчек и ложите в какой-нибудь кеш, а при обновлении или переходе на другую страницу анализируйте покзывать страницу из кеша или по-новой обрабатывать исходный файл.
Неизвестный
14.11.2006, 10:50
общий
это ответ
Здравствуйте, Nikk!
Да, но лучше сделать это не так. лучше один раз скачать файл, а потом каждый раз его обрабатывать.
А вообще мои Вам рекомендации: читайте его один раз, запихивайте в базу данных и уже от туда работайте с ним. потому что с БД все будет гораздо быстрее, чем с файлами. (не дай бог ещё и Excel-евский, тогда вообще жуть).

Ну и судя по тому, что прайс Вы качаете, на исходном сайте он тоже обновляется иногда. Для того, чтобы обновление прайса у Вас происходило без вашего участия - напишите функцию обработки файла и занесения в БД, запишите её в пхп файл и настройте CRON на сервере (если доступен).
Если что-то непонятно, пишите в персональные соообщения :)
Неизвестный
14.11.2006, 10:51
общий
это ответ
Здравствуйте, Nikk!
Лучше снова обработать файл.
Но еще можно передать по ссылке (не рационально), или прописать в сессии, что тоже не практично. Так что выход - повторно обработать, откинув первые 20 строчек.
Неизвестный
14.11.2006, 11:12
общий
То есть, если я правильно понимаю, то с csv файлом лучше не связываться?? ну то есть естественно один раз его загрузить на сервер и залить в БД?Но есть такая проблема, нужно обрабатывать прайсы от 5-7 поставщиков, все они с разными структурами и объемом каждый где то по 250-300 кб и около 800 записей.Если я при первом запуске скрипта скачаю в строку $data один файл csv, то при перезапуске скрипта она обнулится??Тогда наверно лучше сесию использовать
Форма ответа