|
Веб-курсы Что это? Оглавление Основы Основы основ Практика Гостевая книга Простой сайт Структура сайта (MVC) Ядро (Light) Ядро Гостевая на SQL Статические страницы Модуль новостей Система регистрации Теория Дебаггинг Регулярные выражения Введение в ООП Паттерны проектирования Репозитарий BB-code Почтовый класс Пагинатор Всякие полезности Download Полезные утилиты Разное Видеокурсы Последние изменения Вопросы и замечания сюда Реклама Диеты для похудения Фреймворк Kohana. Обучение. Мануал на русском. |
Шаг 3Запись в файлТо, что мы сделали - игрушка, не более того. Для нормальной работы приложения часто необходимо запомнить данные и использовать их потом по назначению. Для этого используется запись в файл или в базу данных.Начнем с файла. Записать файл на сервере можно несколькими способами. для этого используется комбинация функций fopen(), fwrite(), fclose(). В промежутках между этими функциями нужно делать блокировку, иначе высока вероятность совместного доступа. То есть если два юзера одновременно захотят записать данные, начнется путаница. Для начала мы воспользуемся безопасной комбинацией функций file_get_contents() и file_put_contents(). Один момент - функция file_put_contents() доступна только в 5 (и выше) версии php. А функция file_get_contents() умеет читать файл частично только начиная с 5.1 версии. Но пока нам файл нужен целиком, а дальше видно будет.
Нажмите кнопку и посмотрите, что теперь находится рядом с этим скриптом. Появился новый файл? Откройте его в блокноте и посмотрите, что в нём. Вот так сохраняются данные на сервере. Записывает информацию в файл функция file_put_contents(). Обратите внимание на флаг FILE_APPEND. Если использовать функцию без этого параметра, файл перезапишется. А так данные будут добавляться в конец файла. Еще обратите внимание на символ переноса строки. Каждая новая запись будет теперь с новой строчки. нам это важно. Теперь нужно их прочитать.
Появилась новая функция - file_exists(), которая проверяет наличие файла. Иначе интерпретатор выдаст сообщение об ошибке, если файла нет. Функция file_get_contents() считывает содержимое файла. Теперь можете смело идти на другую страницу или вообще закрыть браузер, сообщение останется. |