X   Сообщение сайта
(Сообщение закроется через 3 секунды)



 

Здравствуйте, гость (

| Вход | Регистрация )

8 страниц V   1 2 3 4 5 6 7 8 >
Открыть тему
Тема закрыта
> Кэширование данных в .TXT файл (запись и вывод)
kismedia
kismedia
Topic Starter сообщение 17.1.2011, 13:12; Ответить: kismedia
Сообщение #1


Вот решил поднять данную тему, я думаю это многим будет полезно знать, очень часто возникает необходимость кэшировать определенные данные, что бы снизить нагрузку или количество обращений к стороннему серверу и т.д.
До этого данную "фичу" мне писали знакомые прогеры, решил попробовать сам разобраться.

Решил начать с кэша в .TXT файл, думаю это по-проще в понимании будет, чем работать с БД (может ошибаюсь).

Опишу на своем примере и зачем это нужно мне.
Недавно в данной теме я, не без помощи пользователей форума, написал следующую функцию:

[php]function parstitle ($urlsape){

if($html_content = @file_get_contents('http://' .$urlsape. '')){
preg_match_all( "|<title>(.*)</title>|sUSi", $html_content, $titles);
$titles = $titles[1][0];
if (mb_check_encoding($titles, 'Windows-1251') && !mb_check_encoding($titles, 'UTF-8')){
$titles = mb_convert_encoding($titles, 'UTF-8', 'Windows-1251');
}
if ($titles = "301 Moved Permanently") {
$html_content = @file_get_contents('http://www.' .$urlsape. '');
preg_match_all( "|<title>(.*)</title>|sUSi", $html_content, $titles);
$titles = $titles[1][0];
if (mb_check_encoding($titles, 'Windows-1251') && !mb_check_encoding($titles, 'UTF-8')){
$titles = mb_convert_encoding($titles, 'UTF-8', 'Windows-1251');
}
}
echo $titles;
}else echo "Данные не доступны";
}[/php]

Что делаем, парсим содержимое тега <TITLE> заданной страницы $urlsape и выводим результат в правильной (соответствующей сайту) кодировке из переменной $titles.

Вот, собственно и задача:
Как дописать, реализовать кэширование переменной $titles учитывая значение $urlsape в некий текстовый файл, допустим построчно, и потом вытягивать это значение по условию наличия и соответственно выводить результат. Тем самым сократив количество постоянных обращений и бессмысленного повторного парсинга сайтов.
0
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
sc2r2bey
sc2r2bey
сообщение 17.1.2011, 14:17; Ответить: sc2r2bey
Сообщение #2


ob_start()
ob_get_contents()
ob_end_clean()

http://php.russofile.ru/ru/translate/unsort/chachig_in_php


--------------------
Заметки о разработке и не только
программирую web и для we
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Гость_0_* Гость_0_*
сообщение 17.1.2011, 14:23; Ответить: Гость_0_*
Сообщение #3


Kismedia, на сколько я знаю, в PHP кешируется не в файл, а специальный буфер. Делается это с помощью функций, которые surfer указал во втором посте ;)
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
kismedia
kismedia
Topic Starter сообщение 17.1.2011, 14:26; Ответить: kismedia
Сообщение #4


surfer, Я так понимаю в приведенной статье рассматривается кэширование, вообще, содержимого страницы сайта, а не кэш определенных данных.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
kismedia
kismedia
Topic Starter сообщение 17.1.2011, 14:32; Ответить: kismedia
Сообщение #5


admin, Нет, это не то. Может Вы меня не правильно поняли. Или скажу так, и как Вы себе это представляете, выполнить выше приведенную задачу с помощью?
ob_start()
ob_get_contents()
ob_end_clean(
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
kismedia
kismedia
Topic Starter сообщение 17.1.2011, 14:42; Ответить: kismedia
Сообщение #6


А если сайтов будет, скажем 1000 штук, необходимо организовать постоянное хранилище данных, запись и чтение.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
sc2r2bey
sc2r2bey
сообщение 17.1.2011, 14:52; Ответить: sc2r2bey
Сообщение #7


Я так понимаю в приведенной статье рассматривается кэширование, вообще, содержимого страницы сайта, а не кэш определенных данных.

не принципиально что кэшировать, я думаю тебе надо матчасть подучить и разобраться что такое кэширование и способы хранения данных
Нет, это не то. Может Вы меня не правильно поняли. Или скажу так, и как Вы себе это представляете, выполнить выше приведенную задачу с помощью?

я представляю
А если сайтов будет, скажем 1000 штук, необходимо организовать постоянное хранилище данных, запись и чтение.

а для этого используется база данных или файлы


--------------------
Заметки о разработке и не только
программирую web и для we
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Гость_0_* Гость_0_*
сообщение 17.1.2011, 15:03; Ответить: Гость_0_*
Сообщение #8


Kismedia, то, что вам нужно, это не кеширование, а просто запись в файл ;)
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
kismedia
kismedia
Topic Starter сообщение 17.1.2011, 15:09; Ответить: kismedia
Сообщение #9


а для этого используется база данных или файлы


Так вот об этом и речь.

Цитирую еще раз Админа:

Kismedia, на сколько я знаю, в PHP кешируется не в файл, а специальный буфер. Делается это с помощью функций, которые surfer указал во втором посте


я представляю

Возможно, но не думаю что данный способ будет наиболее подходяшим для этой задачи.

Вы сами пробовали хоть раз делать нечто подобное?
Подождем специалистов, либо отдам задачу прогеру , а потом выложу здесь результат.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
sc2r2bey
sc2r2bey
сообщение 17.1.2011, 15:10; Ответить: sc2r2bey
Сообщение #10


ты сам себе противоречишь, ты определись что ты хочешь, а потом правильно озвучивай задачу, а то тебе как ты озвучил и специалисты не помогут ;)


--------------------
Заметки о разработке и не только
программирую web и для we
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
8 страниц V   1 2 3 4 5 6 7 8 >
Открыть тему
Тема закрыта
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0


Свернуть

> Похожие темы

  Тема Ответов Автор Просмотров Последний ответ
Открытая тема (нет новых ответов) Интеграция спортивных данных API. Коэффициенты БК, Live результаты
14 yaroslav89 6628 13.3.2024, 23:16
автор: spoyer_ru
Горячая тема (нет новых ответов) Ручной обмен, ввод/вывод электронных валют | ЮMoney, WMZ, Крипта, Приват, Монобанк | Низкие комиссии, минимальные суммы сделок
быстро, удобно, по доступному курсу
200 Sostavitel 97667 11.2.2024, 21:07
автор: Wolfhound
Открытая тема (нет новых ответов) ГОРЯЧИЕ FOREX|CRYPTO ЛИДЫ. БАЗЫ ДАННЫХ
[Чарджбек|Рекавери|Возврат]
9 Leado 3801 9.2.2024, 16:04
автор: baza0013
Открытая тема (нет новых ответов) Sbitcoin.ru – Ввод, Вывод, Обмен: Qiwi, YD, Btc, Btc-e, PM, Cash IN, PR24, MG, WU, Нал (RU, UA).
9 sbitcoinru 6746 10.10.2023, 19:25
автор: Sbitcoin
Горячая тема (нет новых ответов) Обмен WebMoney - Яндекс - QIWI. Вывод/ввод Приват24 UAH
225 himin 132451 7.5.2023, 13:26
автор: Вера_Симонова


 



RSS Текстовая версия Сейчас: 29.3.2024, 9:55
Дизайн