Спасибо. Имелось ввиду, может сможет кто-нибудь набросать скрипт.
$path = '.'; $keys = file('keyword.txt'); $dir = new RecursiveDirectoryIterator($path); foreach(new RecursiveIteratorIterator($dir) as $val){ if(! $val->isFile()){ continue; } $file = $val->getPathname(); $name = $val->getFilename(); $ext = explode('.', $name); $ext = end($ext); $allow = array('htm', 'html'); if(! in_array(strtolower($ext), $allow)){ continue; } $html = file_get_contents($file); $key = 'key1'; while(($p = strpos($html, $key)) !== false){ $random = trim($keys[array_rand($keys)]); $html = substr_replace($html, $random, $p, strlen($key)); } file_put_contents($file, $html); echo "{$file}<br>\n"; }
Огромное тебе спасибо!! 🚬
Бро, если это не долго, был бы признателен, если подправишь код.
Да, но как подправить код что бы искало и в подпапках тоже?
Большое спасибо, но вот дальше по папкам почему-то не вставляет кейворды.
Только в корневом каталоге.
Подскажи ещё пожалуйста, как сделать так что бы и по каталогам дальше шла замена:
papka1/html/news.html
.../
papka_new2/html/new.html
и т д
$keys = file('keyword.txt'); $dir = '.'; $files = scandir($dir); foreach($files as $f){ if(in_array($f, array('.', '..'))){ continue; } if(strpos($f, '.htm') === false){ continue; } $fil = $dir.'/'.$f; $html = file_get_contents($fil); $key = 'key1'; while(($p = strpos($html, $key)) !== false){ $random = trim($keys[array_rand($keys)]); $html = str_replace($key, $random, $html); } file_put_contents($fil, $html); }
Спасибо, запустил, подставка идёт key1. Но не правильно, к примеру в html файле сотня key1 и везде только один кейворд вставляется один и тот же, не по рэндому.. Помоги пожалуйста сделать так, что бы вставлялись разные кейворды из файла, а не один для одного html файла.
Мужики, никто не знает разве?
:)
key1 может быть в любом виде, хоть так:
I love you: key1, key1, key1 или
Нужна обычная функция поиска и замены слов (к примеру как в программе Text Replacer)
Только слово которое нужно найти "key1", а заменить на случайное слово из файлиак keyword.txt
Т.е. поиск и замена не на одно слово из списка keyword.txt в сдучайном порядке.
Более понятней :)
Есть тысячи .html файлов, в которых есть код "key1"
Так же есть файл keyword.txt в котором тысячи кейвордов, каждый кейворд идёт с новой строки.
Пример:
super puper
mega drive
serach rampage
Цель: Подставить вместо key1 в тысячах .html файлов случайным образом кейворды из файла keyword.txt
Получится как-то так:
<meta name="keywords" content="super puper, mega drive, serach rampage, mega drive" />
<meta name="description" content=serach rampage" />
Ну и более понятными словами, поиск и змена key1 случайными словами из списка keyword.txt
Я думаю здесь есть люди, кто сможет набросать пару строк бессплатно )