Сохранить (закэшировать) результаты выполнения скрипта в файл
Данный PHP код может быть чрезвычайно полезным в том случае, если Вам необходимо показывать результаты выполнения какого-либо скрипта не одному посетителю Вашего сайта, а нескольким в течение указанного времени. Таким образом «тяжелый» скрипт можно не выполнять несколько раз для каждого посетителя в отдельности, а выполнить всего один раз и сохранить полученные результаты в файл и подгружать их до тех пор, пока они не «устареют»!
Путем сохранения результатов, полученных в результате выполнения какого-либо скрипта, можно значительно снизить нагрузку на сервер, т.к. при повторном выводе полученных результатов мы просто считываем их из сохраненного ранее файла, а не вычисляем повторно.
Перед тем, как приступить к сохранению полученных результатов в файл, сначала необходимо определиться какой скрипт является «тяжелым» (содержит множественные обращения к MySQL, создает нагрузку на сервер и т.д.). Также рекомендуем все результаты выполнения скриптов, которые не являются динамическими (не часто обновляющиеся) сохранять в файлы на сервере.
Для примера на нашем сайте такой страничкой (обновляющейся через определенные промежутки времени) является страничка Статистики нашего сайта.
В приведенном ниже примере $time_cashe=600 — период обновления файла с результатами в секундах, data.dat — файл с результатами выполнения какого-либо скрипта, дата обновления которого является датой последнего выполнения скрипта.
<? php
$time_cashe = 600 ;
$lines_time = filemtime ( ‘cashe/data.dat’ );
if ( time ( true )- $lines_time > $time_cashe ) <
Здесь располагается Ваш скрипт ,
результаты выполнения которого необходимо поместить в файл .
<? php
$buffer_cashe = ob_get_contents ();
ob_end_clean ();
echo $buffer_cashe ;
$r = fopen ( «cashe/data.dat» , «w+» );
fputs ( $r , $buffer_cashe );
fclose ( $r );
>
else <
$lines_cashe = file ( ‘cashe/data.dat’ );
foreach ( $lines_cashe as $line_cashe_num => $line_cashe ) echo $line_cashe ;
>
?>
Таким образом, при обращении к страничке, содержащей данный код, будет считано время последнего изменения файла data.dat. Если разница между последним обновлением и текущим временем составит более 600 секунд, то будет выполнен скрипт получения каких-либо данных, результаты которого будут сохранены в файл data.dat. Если же разница между последним обновлением и текущим временем составит менее 600 секунд, то скрипт просто считает данные из файла и выведет их на экран.
Обратите внимание, что в файл будут сохранены (закэшированы) только те результаты выполнения скрипта, которые Вы выводите на экран браузера.
Все промежуточные результаты (содержащиеся в переменных) сохранены не будут!
Перед публикацией все комментарии проходят обязательную модерацию!
Если Вы хотите задать какой-либо вопрос, то сделайте это на нашем форуме.
Таким образом, Вы сможете быстрее получить ответ на интересующий Вас вопрос.
Курсы javascript
В javascript мне нужно сохранить данные в текстовый файл.
Например в php это делается с помощью file_put_contents, который принимает три параметра. Если например записать вот так.
file_put_contents(‘file.txt’, ‘text’, FILE_APPEND);
1. Файл который создается
2. Параметр который нужно записать в файл
3. FILE_APPEND — дописывает данные в конец файла если он сушествует. Без этого флага, файл будет перезаписываться, стирая последние изменения.
Как сохранить данные в файл и чтобы можно было добавлять новые данные? Существует аналог из php file_put_contents?
Katy93, в каком javascript?
Серверном на Node.js?
Клиентском в браузере рандомного посетителя вашего сайта?
Если второе — то, очевидно, никак. Вы не имеете право трогать жёсткий диск клиента. Вы только можете предложить клиенту сохранить файл, а он может и отказаться.
Для этого используется Blob, URL.createObjectURL и <a href="<url>" download="<name>">.
Если первое — то для работы с файловой ситсемой есть встроенная библиотека fs. Запись файла, соответственно, fs.writeFile.
Javascript в браузере не имеет доступа к файловой системе.
Единственный способ что то сохранить — это выполнить "загрузку" через элемент <a> При этом появится стандартное диалоговое окно выбора файла, куда записать. Дописывать естественно нельзя.
Как записать переменную с js в текстовый файл?
Если файл нужно записать на компьютере, есть вариант записать в папку для загрузок, указанную в настройках браузера:
Просто кликните ссылку.
Сохранить файл на клиенской стороне — никак. На сервере можно например через node:
По поводу тега download : Он не позволяет сохранять файл. Но может сформировать его и дать пользоателю на закачку при нажатии на кнопку/ссылку. Вот пример:
Как создать Javascript (js) файл.
Многие начинающие веб-программисты, когда они начинают изучать Javascript, сталкиваются с проблемой:
Как создать файл с расширением js, в котором будет размещаться javascript код?
Помню, как я тоже на первых порах столкнулся с этой проблемой. Такой вопрос может возникать из-за непонимания того, что собой представляет Javascript код.
В первую очередь, нужно понимать, что javascript – это обычный текст, который написан по определенным правилам. Соответственно, храниться этот текст тоже должен в текстовом документе.
Единственное отличие этого текстового документа от простого текстового файла – это его расширение. Javascript файлы имеют расширение *.js.
Таким образом, вся задача состоит в том, чтобы создать текстовый документ и изменить его расширение.
Хочу рассказать о тех способах создания файла с расширением js, которыми я сам лично пользуюсь.
Все мои уроки по Javascript здесь.
Способ 1. Создание файла js из обычного текстового документа.
Открываем программу «Блокнот», которая входит в стандартный пакет операционной системы Windows.
Если у вас этой программы нет, то можете воспользоваться другим текстовым редактором.
Создаем новый документ и сохраняем его, выбрав в главном меню команду «Файл-сохранить как…»
После того, как файл будет сохранен, нужно открыть папку, где вы его сохранили и переименовать файл, изменив его расширение на js.
Если расширение файлов у вас не отображается, то здесь можно почитать, как его можно включить.
После этой операции, файл для работы с Javascript готов.
Способ 2. Создание файла js в редакторе кода Dreamweaver.
Этим способом я пользуюсь намного чаще, по причине того, что это просто быстрее и удобнее. Создать файл js можно с помощью универсального редактора кода Dreamweaver.
Имейте в виду, что Dreamweaver – это далеко не единственная программа, которая на это способна. Очень многие редакторы кода тоже позволяют также создавать файлы с расширением js.
При первом запуске программы, появляется следующее окно, в котором можно выбрать, что мы хотим создать документ js.
Выбираем его и сохраняем документ.
Если такое окно приветствия у вас не открылось, то можно воспользоваться главным меню «Файл – Создать новый документ» и выбираем «Javascript».
Если у вас возникнут какие-то вопросы или проблемы с созданием, файлов js таким способом, прошу написать об этом в комментариях.