Массовая замена html кода с макросами

Roman_
На сайте с 13.01.2008
Offline
150
646

Знаю что таких тем было уже много, но там нужного софта я для себя не нашел...

Нужно заменить в сотне html файлов фрагмент кода, но с подстановкой случайного значения. Что то типа заменить: "</body>" на "<div>*случайное число в диапазоне x-y*</div></body>"

Есть идеи как такое реализовать бесплатно скачиваемым софтом? И сколько может стоить написать скрипт?)

ДП
На сайте с 23.11.2009
Offline
203
#1
Roman_:

Есть идеи как такое реализовать бесплатно скачиваемым софтом? И сколько может стоить написать скрипт?)

из идеи - может как-то извратить синонимизатором, типа руками шаблон сделать {1|2|3|4} или как они там пишутся и размножить?

А по поводу скрипта - что-нибудь типа такого:


<?php
$dir = "H:\\web\\vhosts\\se\\replace\\test";
$x = 1;
$y = 10;
$h = dir($dir);
while ($file = $h->read())
{
if ($file == "." || $file == "..") continue;
$ext = pathinfo($file, PATHINFO_EXTENSION);
if ($ext != "htm") continue;

$data = file_get_contents($dir . DIRECTORY_SEPARATOR . $file);
$rand = rand($x, $y);
$data = str_replace("</body>", "<div>" . $rand . "</div></body>", $data);
file_put_contents($dir . DIRECTORY_SEPARATOR . $file, $data);
}
[umka]
На сайте с 25.05.2008
Offline
456
#2

<?

$x=1000;

$y=9999;

$data=file_get_contents('somefile.html');

$data=preg_replace('/<\/body>/e',"'<div>'.rand($x,$y).'</div></body>'",$data);

file_fut_contents('somefile.html',$data);

?>

Всё реализуется на бесплатно скачиваемом софте :)

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

Лог в помощь!
Roman_
На сайте с 13.01.2008
Offline
150
#3

[umka], увы, моих знаний php не хватит, что бы доделать перебор файлов =/

Дикий пионер, к сожалению, ваш скрипт не работает(( Исполняется, но изменений не происходит...

Дикий пионер:
из идеи - может как-то извратить синонимизатором, типа руками шаблон сделать {1|2|3|4} или как они там пишутся и размножить?

Хм, очень нестандартное решение может получиться, нужно хорошенько пораскинуть мозгами в эту сторону :)

Roman_ добавил 13.09.2011 в 00:02

Roman_:
Хм, очень нестандартное решение может получиться, нужно хорошенько пораскинуть мозгами в эту сторону

Да, пожалуй так может получиться. Ночью попробую. Дикий пионер, спасибо за идею!)

LEOnidUKG
На сайте с 25.11.2006
Offline
1774
#4

Юзайте на здоровье:


function spider($path)
{
$dir = opendir($path);
while($d = readdir($dir))
{
if ($d == '.' || $d == '..') continue;
if (is_file($path.'/'.$d))
{
if (strpos($d,'.htm')){
$data='';$data=file_get_contents($path.'/'.$d);

$data=str_replace('</body>','<div>'.rand(0,1000).'</div></body>',$data);

file_put_contents($path.'/'.$d,$data);
}
}
else if (is_dir($path.'/'.$d)) spider($path.'/'.$d);
}
}
spider('z:\home.lan');
✅ Мой Телеграм канал по SEO, оптимизации сайтов и серверов: https://t.me/leonidukgLIVE ✅ Качественное и рабочее размещение SEO статей СНГ и Бурж: https://getmanylinks.ru/ ✅ Настройка и оптимизация серверов https://getmanyspeed.ru/

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий