Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Запретить перезапуск скрипта
 
 автор: Владимир55   (06.11.2007 в 14:13)   письмо автору
 
 

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

Можно ли поставить на самом скрипте какой-либо код, препятствующий его перезапуску в процессе исполнения?

   
 
 автор: Саня   (06.11.2007 в 14:20)   письмо автору
 
   для: Владимир55   (06.11.2007 в 14:13)
 

Чтобы ничего не портилось заблокируйте редактируемые файлы функцией flock().
Например:
<?php
clearstatcache
();
if ( 
is_writable("file.txt") ) {
  
$fp fopen("file""w")
  
flock($fpLOCK_EX);
  
// ...
  // долгие операции
  // ...
  
flock($fpLOCK_UN);
  
fclose($fp);
}
И перезапущенный скрипт просто не сможет получить доступ к файлу.
Возьмите за правило постоянно использовать flock() при работе с файлами.

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования