блокировка файлов в php

У меня был новичок (соседский подросток), который написал какой-то php-код, чтобы отслеживать использование на моем веб-сайте. Я не знаком с php, поэтому немного спрашиваю о параллельном доступе к файлам.

Мое собственное приложение (в Windows) иногда записывает некоторые данные на мой сайт, нажимая URL-адрес, содержащий мой скрипт php. Собственное приложение не проверяет возвращаемые данные.

        $fh = fopen($updateFile, 'a') or die("can't open file");
        fwrite($fh, $ip);
        fwrite($fh, ', ');
        fwrite($fh, $date);
        fwrite($fh, ', ');
        fwrite($fh, implode(', ', $_GET));
        fwrite($fh, "\r\n");
        fclose($fh);

Это сайт с низким трафиком, и данные не являются критическими. Но что произойдет, если два пользователя столкнутся и по два экземпляра скрипта попытаются добавить строку в файл? Есть ли какая-либо неявная блокировка файлов в php?

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

7
задан RobertFrank 27 March 2011 в 14:07
поделиться