Михаил
Мастер
(1567)
7 лет назад
используйте константу PHP_EOL вместо связки \n и \r - символ переноса строки и возврат каретки на разных ОС отличается.
file_put_contents('/path/to/file', 'text' . PHP_EOL, FILE_APPEND);
после этого убрать дубли можно с помощью функции file, безо всяких ненужных explode.
file_put_contents('/path/to/file', join(
PHP_EOL,
array_unique(file(
'/path/to/file',
FILE_SKIP_EMPTY_LINES | FILE_IGNORE_NEW_LINES
))) . PHP_EOL);
вот как выглядят данные в txt "123125125123"
(<br\ эт для переноса строк, а то FILE_APPEND и \n\r не исправили трабл)