Всем привет подскажите в 1 вопросе использую распаковку zip архива через php Вот сам код Код (Text): $zip = new ZipArchive; $res = $zip->open('site.zip'); if ($res === TRUE) { $zip->extractTo('../ok/'); $zip->close(); Вот в чём вопрос у меня в архиве "site.zip" есть файл dr.php в ней строчка имеется Мне нужно что бы он туда записывал при создании в это строку ! Примерно вот так Код (Text): $zip = new ZipArchive; $res = $zip->open('site.zip'); if ($res === TRUE) { $zip->extractTo('../ok/'); $zip->close(); $off = "9381273"; И он должен в файл dr.php в строчку $off = ""; вставить $off = "9381273";
у тебя есть файл, ты в него должен записать строчку. не догоняю, а при чем тут zip? это реально имеет значение?
Я просто не знаю как это всё сделать, просто у меня он распаковывает в папку "OK" В нем файл dr.php вот именно в нём мне надо изменить 1 строку $off = "";
Ну открой этот файл и замени. Если файл небольшой, то можно даже не заморачиваться с поиском строки, а сделать по-простому: Код (PHP): $content = file_get_contents(__DIR__ . "../ok/dr.php"); $content = str_replace('$off = ""', '$off = "9381273"', $content); file_put_contents(__DIR__ . "../ok/dr.php", $content);
Вот какая ошибка Код (Text): Warning: file_get_contents(/home/host/site.ru/htdocs/panel/lib../mg/install/dr.php) [function.file-get-contents]: failed to open stream: No such file or directory in Warning: file_put_contents(/home/host/site.ru/htdocs/panel/lib../mg/install/dr.php) [function.file-put-contents]: failed to open stream: No such file or directory in
Как исправить? Добавлено спустя 10 минут 48 секунд: Исправил, Спасибо Добавлено спустя 3 минуты 25 секунд: Только вот в чём дело он мне всё удаляет из этого файла а у меня там не только этот код
ну я сделал допустим Код (Text): $off = ""' $off2 = ""' $off3 = ""' $off4 = ""' $off5 = ""' Мне он всё удалил и оставил только И он просто записывает А нужно
Не должен все удалять. Так как он просто заменяет $off = "" на $off = "9381273" И даже если написано: $off = ""; то он все равно заменит на $off = "9381273";
А подскажите а возможно сделать проверку Если допустим я сделаю так Мне он запишет без знака "-" а просто "9381273"
да нет просто это у меня используется а если я поставлю - он мне не должен его записать Добавлено спустя 1 минуту 38 секунд: Нет записал он мне её как А можно проверку сделать ?! Добавлено спустя 1 минуту 44 секунды: если будет "-" то он его просто пропускает и записывает как 9381273