|
|
|
|
|
для: Незнайка
(25.08.2008 в 10:22)
| | Никто MAR_NIKOZA не видел? А то уже вторые сутки пошли, ни слуху, ни духу. Может случилось что?..
P.S. Если, кто встретит скажите незнайка искал :) | |
|
|
|
|
|
|
|
для: Trianon
(25.08.2008 в 10:16)
| | Спасибо :) | |
|
|
|
|
|
|
|
для: Незнайка
(25.08.2008 в 10:09)
| | Касательно менять - подсказал.
Во второй и третьей строках.
Касательно применять - увы. Может быть автор кода подскажет. | |
|
|
|
|
|
|
|
для: Trianon
(25.08.2008 в 09:56)
| | >>Еще нужно понять код, перед тем как его [при]менять.
С этим не поспоришь :)
Может подскажете, как и что нужно [при]менять, а то я сам че-то никак? | |
|
|
|
|
|
|
|
для: Незнайка
(25.08.2008 в 09:53)
| | Еще нужно понять код, перед тем как его [при]менять.
substr($file, -5) означает последние пять символов стоки $file
Вы сравниваете не '.html', а '.htm'? Угу? | |
|
|
|
|
|
|
|
для: xx77
(24.08.2008 в 22:16)
| | Действительно в папках не содержится не одного файла , с расширением html, зато имеется htm :)))
Я заменил на htm, но увы, результат тот же.... Может что-то еще нужно сделать?
if (is_file($directory . '/' . $file) && substr($file, -5) == '.htm') {
|
P.S. Кстати все htm файлы в папках имеют имя: default.htm, если это важно?.. | |
|
|
|
|
|
|
|
для: Незнайка
(24.08.2008 в 20:24)
| | просто проверяется условие substr($file, -5) == '.html'
и похоже на то что в папках не содержится не одного файла , с расширением html маленькими буквами
на денвере работает так как есть.
каждый разделитель - это один вызов функции, папка значит.
цифры - время работы скрипта в секундах
если не нужно проходить по вложенным папкам , закомментируйте часть функции
else if (is_dir($directory . '/' . $file) && ($file != ".") && ($file != "..")) {
RepFiles($directory . '/' . $file); #или рекурсия.
}
|
| |
|
|
|
|
|
|
|
для: xx77
(24.08.2008 в 19:51)
| | Что-то не получилось....
Правильно ли я делал?
Положил Ваш скрипт (назвав его: zamena.php) в папку (например): file и запустил.
В папке file имеются папки: file1, file2, file3 и т.п. в этих папках ( file1, file2, file3 и т.п.) лежат HTML документы: html1, html2, html3 и т.д.
Набрал в брауз.: http://localhost/file/zamena.php
В результате, полоски по всей стр. и запись в углу стр.: 2.1106197834
Что я делаю неправильно? | |
|
|
|
|
|
|
|
для: xx77
(24.08.2008 в 19:51)
| | Спасибо.
А если у меня "Денвер", что-то нужно настраивать, нет? | |
|
|
|
|
|
|
|
для: Незнайка
(24.08.2008 в 13:05)
| | примерно похоже на это
, плюс настроить как Вам нужно создания резервных копий в целях безопасности
, и удаление их в случае ненадобности
<pre><?php
ini_set('max_execution_time', 0);
list($m, $time) = sscanf(microtime(), '0%s %s');
$time .= $m; # время начала выполнения
$search = '#<title>([^<]*)(.+?<strong>)([^<]*)</strong>#s';
# шаблон поиска
$repla = '<?php
\$title = \'$3\';
?>
<title><?php echo \$title ?>$2<?php echo \$title ?></strong>';
# строка замены
//замена частоприменяемым способеом обхода дерева каталогов при помощи рекурсивной функции
function RepFiles( $directory ) # функция
{
global $search, $repla;
$dir = opendir( $directory );
while($file = readdir($dir))
{
if (is_file($directory . '/' . $file) && substr($file, -5) == '.html') {
$txt = file_get_contents($directory . '/' . $file); # текст файла
@rename($directory . '/' . $file, $directory . '/' . $file . '.bak'); # переименование , создание резервных копий файлов
if (file_put_contents($directory . '/' . $file,
preg_replace($search, $repla, $txt))) echo $directory . '/' . $file . ' перезаписан<br>' . "\n"; # запись в файл.
else echo $directory . '/' . $file . ' <b> ошибка записи в файл</b>' . "\n";
} else if (is_dir($directory . '/' . $file) && ($file != ".") && ($file != "..")) {
RepFiles($directory . '/' . $file); #или рекурсия.
}
}
closedir( $dir ) ;
echo '<hr/>';
}
RepFiles( '.' ) ; # вызов функции замены во всех html-файлах в текущей и вложенных в неё дирректориях
list($m, $t) = sscanf(microtime(), '0%s %s');
print '<hr/>' . (($t .= $m) - $time) . "\n"; # время выполнения
?></pre>
|
не проверял, и требует прав доступа на запись в папку, если на хостинге,
и php5 , для file_put_contents() | |
|
|
|
|