- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
Как снизить ДРР до 4,38% и повысить продажи с помощью VK Рекламы
Для интернет-магазина инженерных систем
Мария Лосева
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Здравствуйте. И сразу спасибо, кто окажет любую помощь.
Не могу понять, как реализовать замену определенной строки в текстовом документе на сервере через PHP.
* Текстовый документ на сервере - в дальнейшем ТД.
* База данных MySQL - в дальнейшем БД.
Суть в том, что мне нужно обновлять БД и ТД через форму на сайте методом $_POST.
ТД имеет примерно следующее содержание:
и так почти 2000 строк. Нужно редактировать в ТД именно значение строки "Version:" под определенной строкой "Package: ...". Package и Version можно получать из БД.
Пробовал str_replace / substr_replace, но что-то пошло не так и в ТД заменялись ВСЕ АНАЛОГИЧНЫЕ версии под любым "Package: ...", а нужно чтобы заменялось только под определенной строкой "Package: ...".
Надеюсь, что описал внятно, ибо порой это бывает сделать сложно.
Slav3a, регуляркой?
что-то типа
$newText = preg_replace("#Package: (.*?)\r\nVersion: (.*?)#smi", "Package: $1\r\nVersion: 3.0", $textDocument);
Структуру БД вы можете поменять или работаете уже с тем, что есть?
А то так бы вам каждую эту пару хранить в отдельной записи - тогда и замена будет на уровне БД. А при выводе уже компоновать текстовый документ из всех нужных записей.
$package = preg_quote("ru.site.prog");
$version = '1.2';
$td = preg_replace("/^(Package: {$package}\s+Version: )\S+/m", "$1{$version}", $td);