Время в форме Unix перевести в секунды?

123
S
На сайте с 30.09.2009
Offline
116
#11
LEOnidUKG:
Используйте: filemtime()

Да, спасибо её как раз изучаю, но она тоже показывает дату изменения.

<?php

// Пример вывода: в последний раз файл somefile.txt был изменен: December 29 2002 22:16:23.

$filename = 'somefile.txt';
if (file_exists($filename)) {
echo "в последний раз файл $filename был изменен: " . date ("F d Y H:i:s.",
filemtime($filename));
}
?>

А мне бы тупо чтобы проверить - если прошло более 3600 секунд, то снова перекешировать.

Перелинковку сделал. Теперь думаю куда потратить денежки - сапа, мира или блоги :)
LEOnidUKG
На сайте с 25.11.2006
Offline
1762
#12
stroydomen:
Да, спасибо её как раз изучаю, но она тоже показывает дату изменения.
<?php

// Пример вывода: в последний раз файл somefile.txt был изменен: December 29 2002 22:16:23.

$filename = 'somefile.txt';
if (file_exists($filename)) {
echo "в последний раз файл $filename был изменен: " . date ("F d Y H:i:s.",
filemtime($filename));
}
?>

А мне бы тупо чтобы проверить - если прошло более 3600 секунд, то снова перекешировать.

$filecache=$_SERVER['DOCUMENT_ROOT'].'/somefile.txt'; //Файл с кэшем в корне сайта

$time_sec=time();
@$time_file=filemtime($filecache);
if (($time_sec-$time_file)>3600) {ТУТ МЫ ЧТО-то ДЕЛАЕМ}
✅ Мой Телеграм канал по SEO, оптимизации сайтов и серверов: https://t.me/leonidukgLIVE ✅ Качественное и рабочее размещение SEO статей СНГ и Бурж: https://getmanylinks.ru/ ✅ Настройка и оптимизация серверов https://getmanyspeed.ru/
S
На сайте с 30.09.2009
Offline
116
#13
LEOnidUKG:
$filecache=$_SERVER['DOCUMENT_ROOT'].'/somefile.txt'; //Файл с кэшем в корне сайта

$time_sec=time();
@$time_file=filemtime($filecache);
if (($time_sec-$time_file)>3600) {ТУТ МЫ ЧТО-то ДЕЛАЕМ}

Вот за это Спасибо.

Жаль нет более щадящего сервер варианта.

Я хочу избавиться от постоянного обращения скрипта к серверу, получается шило на мыло вроде, верно? Т.е. у меня скрипт открывает папку с файлами и сканирует их названия. Это он делает с каждым заходом юзера на страницу.

D
На сайте с 09.07.2009
Offline
79
#14

Ну так это куда лучше, чем генерить страницу каждый раз.

S
На сайте с 30.09.2009
Offline
116
#15

потерто 10 симв

Нет, все таки не работает

<?php 

// Если существует кэшированная версия…
$filecache=$_SERVER['DOCUMENT_ROOT'].'cache/2.cache'; //Файл с кэшем, на папку не забываем 777
$time_sec=time();
@$time_file=filemtime($filecache);
if (($time_sec-$time_file)>60) {

// Читаем и выводим файл
readfile('cache/2.cache');
exit();
}

// Начинаем буферизацию вывода
ob_start();

мне кажется тут ошибка

if (($time_sec-$time_file)>60) {
dvaes
На сайте с 03.09.2007
Offline
65
#16

может надо полярность знака поменять. подумайте

S
На сайте с 30.09.2009
Offline
116
#17
dvaes:
может надо полярность знака поменять. подумайте

Согласен. Уже все варианты перепробовал. 😒

LEOnidUKG
На сайте с 25.11.2006
Offline
1762
#18

$filecache=$_SERVER['DOCUMENT_ROOT'].'cache/2.cache';

замените на

$filecache=$_SERVER['DOCUMENT_ROOT'].'/cache/2.cache';

Тоже самое:

readfile($_SERVER['DOCUMENT_ROOT'].'/cache/2.cache');

Всегда пишите от корня сайта путь, проблем будет меньше.

S
На сайте с 30.09.2009
Offline
116
#19
LEOnidUKG:
$filecache=$_SERVER['DOCUMENT_ROOT'].'cache/2.cache';

замените на
$filecache=$_SERVER['DOCUMENT_ROOT'].'/cache/2.cache';

Тоже самое:

readfile($_SERVER['DOCUMENT_ROOT'].'/cache/2.cache');

Всегда пишите от корня сайта путь, проблем будет меньше.

Спасибо. Итак, совместными усидлиями получилось сохранять в кеше весь код страницы и выводить именно его если с кеширования прошло менее 60 секунд, если более - то обновлять кеш-файл и выводит его.

Скажите, пожалуйста, я правильно понимаю - я могу не весь код страницы кешировать, а только его нужную часть? верно?

LEOnidUKG
На сайте с 25.11.2006
Offline
1762
#20
stroydomen:
Спасибо. Итак, совместными усидлиями получилось сохранять в кеше весь код страницы и выводить именно его если с кеширования прошло менее 60 секунд, если более - то обновлять кеш-файл и выводит его.
Скажите, пожалуйста, я правильно понимаю - я могу не весь код страницы кешировать, а только его нужную часть? верно?

Да, можете. Исходный html пропускаете через "парсер", вырезаете нужный код и его в кэш.

123

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий