Jeśli zapisuję dane do pliku przez file_put_contents
z zestawem flag FILE_APPEND
i dwóch użytkowników przesyła dane w tym samym czasie, czy będzie on dołączany niezależnie, czy jest szansa, że jeden wpis zostanie nadpisany?Dwóch użytkowników pisze do pliku w tym samym czasie? (PHP/file_put_contents)
Jeśli ustawię flagę LOCK_EX
, czy drugie zgłoszenie będzie czekać na zakończenie pierwszego zgłoszenia, czy też dane zostaną utracone, gdy nie będzie można uzyskać blokady wyłącznej?
W jaki sposób PHP na ogół to obsługuje? Używam wersji 5.2.9. jeśli to ma znaczenie.
Dzięki Ryan
Czy to nie działa, że modyfikator LOCK_EX robi ? –
Zgodnie z instrukcją: "Domyślnie ta funkcja będzie blokowana do momentu uzyskania żądanej blokady, która może być kontrolowana (na platformach innych niż Windows) z opcją LOCK_NB udokumentowaną poniżej". Więc jeśli LOCK_EX natychmiast wraca z błędem, to nie jest to samo zachowanie. – Ass3mbler
Cool - brzmi to dokładnie to, co PO jest po. +1 ode mnie. :-) –