Задать вопрос
@jacksonmihailov

Как (php) редактировать определенную строку в файле?

Доброе время суток.
Допустим файл может содержать до 2000 строк (каждая строка это serialize(Объект класса) разного размера;).
Раньше хранил это дело в виде массива и доставал его через json_decode(file_get_contents(file)); находил необходимую запись, производил изменения и весь массив писал обратно в файл.
Вопрос заключается в том, каким образом лучше всего менять и добавлять строки в этот файл? Какой метод будет быстрее всего открывать, производить изменения и сохранять файл?
  • Вопрос задан
  • 237 просмотров
Подписаться 1 Оценить Комментировать
Помогут разобраться в теме Все курсы
  • Skillfactory
    Профессия Fullstack веб-разработчик на JavaScript и PHP
    20 месяцев
    Далее
  • Хекслет
    PHP-разработчик
    10 месяцев
    Далее
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
Решения вопроса 1
Stalker_RED
@Stalker_RED
Небольшой файл можно переписывать целиком.

С большим файлом все сложнее - если длина строки не меняется, то можно переписывать отдельные участки при помощи fopen, fseek, fputs.
Если новая строка короче- можете добавить пробелов в конец строки.
Если увеличивается - придется переписать всё, что идет после измененной строки.

Можете попробовать вызывать sed, вполне возможно что он будет очень быстр.

Но если планируется и дальнейший рост этого файла, то самым правильным решением будет переход на базу даных.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
FoodSoul Калининград
от 180 000 до 250 000 ₽
IT-Spirit Москва
от 230 000 до 320 000 ₽
от 200 000 до 290 000 ₽