Удаление последней строки из файла
Простой вариант, если исходный файл не заканчивается перевод строки:
Скопировано
$text = file_get_contents( 'FILE_PATH' );
$pos = strrpos( $text, PHP_EOL );
$text = substr( $text, 0, $pos );
file_put_contents( 'FILE_PATH', $text );
Показать код
Или вариант с проверкой, что последняя строка в файле это перевод строки. И тогда мы удаляем последнюю значимую строку и добавляем в коней перевод строки:
Скопировано
$text = file_get_contents( 'FILE_PATH' );
$offset = mb_substr( $text, -1 ) == PHP_EOL ? -2 : 0;
$pos = strrpos( $text, PHP_EOL, $offset );
$text = $offset === 0 ? substr( $text, 0, $pos ) : substr( $text, 0, $pos ) . PHP_EOL;
file_put_contents( 'FILE_PATH', $text );
Показать код
Вместе FILE_PATH
прописываем путь к файлу.