Хостинговая компания Карианг
Хостинг для Вас
Главная компания Карианг Тарифные планы Контакты Карта сайта
 
Сравнение строк
Сравнение строк

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

Третий необязательный параметр wouldblock устанавливается в true, если файл, к которому происходит обращение, уже блокирован другим скриптом. Функцию flock () следует вызывать сразу после открытия файла для установки блокировки и непосредственно перед закрытием файла для снятия блокировки. Пример - в листинге 6.37.

В реальных Web-приложениях необходимы более сложные схемы блокировки файлов. Так при добавлении записи в файловый вариант гостевой книги, чата или счетчика посещений, если файл заблокирован предыдущей операцией, информация будет потеряна, поэтому следует организовывать цикл ожидания, как это продемонстрировано в листинге 6.38.

B листинге представлена функция work_with_fiie(), которая в качестве первого параметра $fiiename принимает имя файла, а в качестве второго параметра $str- информацию, которую необходимо дописать в файл. При этом блокировка файла осуществляется в цикле: при неудачной попытке заблокировать файл происходит задержка выполнения программы с помощью функции sleep о, которая принимает единственный параметр- время задержки в секундах.

Горячие предложения
Партнеры:

 
Установка Apache | Настройка PHP | Дистрибутивы | Apache Service Monitor | Консоль управления | Командная строка | Проблемы установки | Конфигурирование | Пути к файлам | Директивы httpd.conf | Виртуальные хосты | Модули | CGI-приложения | Директивы php.ini | Ограничение ресурсов | Обработка ошибок | Ведение журнала | Обработка данных Загрузка файлов | Библиотеки расширений | Подключение MySQL | Internal Server Error | Undefined variable | Не подключается MySQL | Неизвестные ошибки | Фaйл .htaccess | Индексные страницы | Коды ответа | Кодировка | MultiViews | Запрет доступа | Перенаправление | Преобразование | .htpasswd | Одномерные массивы | Присвоение значений | Array() | Многомерные массивы | Циклы | Способы сортировки | Определение IP | Поддержка языков | Кавычки | Форматирование | Сравнение строк | Поиск в тексте | Замена в тексте | Подстроки | Символы | Хранение данных | Синтаксис | Проверка правильности | Атрибуты | Каталоги | Csv-Файлы | Плоские файлы | Сессии | Cookies | Работа с FTP | Сетевые протоколы | Электронная почта | Привилегии | Классы | Объекты | Методы |
© 2005-07 «Хостинговая компания Карианг». Все права защищены.