Если я записываю данные в файл через file_put_contents
с установленным флагом FILE_APPEND
, и два пользователя одновременно отправляют данные, будут ли они добавляться независимо или есть шанс, что одна запись будет перезаписана?Два пользователя одновременно записывают файл в файл? (PHP/file_put_contents)
Если я установил флаг LOCK_EX
, будет ли второе представление ждать завершения первого представления или потеряны ли данные, если невозможно получить исключительную блокировку?
Как PHP обычно обрабатывает это? Я запускаю версию 5.2.9. если это имеет значение.
Спасибо, Райан
Не так ли действует модификатор LOCK_EX ? –
Как говорится в руководстве: «По умолчанию эта функция блокируется до тех пор, пока не будет получена запрошенная блокировка, это может контролироваться (на платформах, отличных от Windows), с опцией LOCK_NB, описанной ниже». Поэтому, если LOCK_EX немедленно возвращается с ошибкой, это не то же поведение – Ass3mbler
Cool - звучит так, как это происходит после OP. +1 от меня. :-) –