file_get_contents обычно не уважает блокировку стадо, т. Е.
Advisory Bocking. < / / p>
Вы можете облегчить это с помощью дополнительного кода, чтобы запросить общую блокировку,
like ... < /p>
< /blockquote>
Код: Выделить всё
< /code>
, который я протестировал с успехом. Я также проверил, что, несмотря на то, что файл был заблокирован с помощью Flock ()
Однако, и в основном я прошу информацию, я прочитал веб -страницу под названием «Чтение заблокированных файлов в PHP», которая утверждала следующее в отношении File_get_contents < /code> и блокировка файлов. < /p>
Чтение заблокированного файла с помощью файла file_get_contents () < /p>
< P> Это один из худшего способа прочитать файл, пока он заблокирован и изменен, потому что:
- file_get_contents () вернет пустую строку (например, в "")
- FileSize () вернет фактическое число байтов, записанных в файл < /p>
< /blockquote>
I Эта претензия правильно? Я запускаю некоторые тесты, блокируя файл исключительно и постоянно записывая его, используя при использовании File_get_contents в другом процессе PHP для чтения файла и не испытывал поведения, которое, как указано выше
file_get_contents () вернет пустую строку (например, в "") < /p>
< /blockquote>
В целом это правда, что PHP File_get_contents ничего не заботится о блокировке консультативных файлов.
Кроме того, я правильно предполагаю, что претензии, представленные на веб -странице пустой строки, возвращаемой File_get_contents, пустые ", являются правдой только в том случае, если файл пуст или временно пуст (в то время как изменение), но не в целом пустым (Только по причине того, что файл был Flock () ed)?
Подробнее здесь: https://stackoverflow.com/questions/492 ... le-locking