Форум → Программирование → PHP для идиотов → подчистка большого сайта регулярками?
подчистка большого сайта регулярками?
Страницы: ← Следующая страница →
-
привед деловеперы
начну по порядку
задача такая найти (заменить.вырезать слова) в сайте на локалке
(окуенно большой больше 5000страниц)
всегда для этого пользовался дремвивером.
таркнул на кнопку найти и заменить вот и все недолга.
но на проход этого сайта он тратит (окуеть!) больше 15минут за раз.
поскольку менять докуя понял что нужно попробывать РНР
полазил в гугле.наткнулся на учебник какого то жидо массона
он пишет что такие вещи проделывал на РНР за 3 секунды.
я повелся.почитал.сначала почувствовал что окуенно умный
даже кодить начал
if($mozg)?($grizi_granit):($kupi_lopatu);
потом когда дошел до ООП понял что меня наипали
подсунули какую то куйню про гианекологическое дерево
родитель–потомки
решил обратиться сюда.
кто черканет несколько строк кода.
логика понятна.нужно посчитать все файлы в корне
пройтись по ним циклом и
$str=str_replace("ищем","меняем на",$str);
-
2 июня 2009 г. 22:09, спустя 3 минуты 7 секунд
блядь. а поменьше воды нельзя?$files = glob("files/*");
foreach($files as $f)
{
$t = file_get_contents($f);
$t = str_replace("shit","гавно",$t);
file_put_contents($f,$t);
}Сапожник без сапог -
2 июня 2009 г. 22:10, спустя 1 минуту 16 секунд
if($mozg)?($grizi_granit):($kupi_lopatu);
красава
ну начало у тебя хорошее попробуй написать код а мы уже поправим -
2 июня 2009 г. 22:11, спустя 40 секунд
блять вот эта твоя манера делать все за народ - это пиздец (с) самизнаетекто -
2 июня 2009 г. 22:11, спустя 10 секунд
в принципе и в ифе ошибка))if($mozg)?($grizi_granit):($kupi_lopatu);
красава
ну начало у тебя хорошее попробуй написать код а мы уже поправимСапожник без сапог -
2 июня 2009 г. 22:25, спустя 13 минут 29 секунд
респект за быстрый ответ.
доберусь до ХАМРPА
опробую. -
-
3 июня 2009 г. 12:09, спустя 11 часов 2 минуты 32 секунды
потестил работает! но увы меняет только файлы в корневой папке
а во вложенных нехочет. правов видите ли ему мало
хотя я выставил 777 для пробы включая вложенные папки
Warning: file_get_contents(C:/xamppp/htdocs/browse/catalog) [function.file-get-contents]: failed to open stream: Permission denied in
Warning: file_put_contents(C:/xamppp/htdocs/browse/catalog) [function.file-put-contents]: failed to open stream: Permission denied in
неужели только к каждой папке путь прописывать и циклом проходить?
-
3 июня 2009 г. 12:14, спустя 4 минуты 49 секунд
не ну я то тебе для файлов сказал в папке. для подпапок я бы посоветовал покопать код ;)
потестил работает! но увы меняет только файлы в корневой папке
а во вложенных нехочет. правов видите ли ему мало
хотя я выставил 777 для пробы включая вложенные папки
Warning: file_get_contents(C:/xamppp/htdocs/browse/catalog) [function.file-get-contents]: failed to open stream: Permission denied in
Warning: file_put_contents(C:/xamppp/htdocs/browse/catalog) [function.file-put-contents]: failed to open stream: Permission denied in
неужели только к каждой папке путь прописывать и циклом проходить?
Сапожник без сапог -
3 июня 2009 г. 12:41, спустя 26 минут 51 секунду
wwwww, ну находишь папку по условию и такой же скрипт выполняешь для нее… -
4 июня 2009 г. 8:49, спустя 20 часов 7 минут 49 секунд
понятно.теоретически знаю что под это дело лучше написать функцию
чтобы подставлять в нее только новые папки.
ну по современным реалиям функция уже не катит) нужно применять последние
наработки.непременно КЛАСС
а теперь серьезно.допустим скрипт работает.но как мне узнать время его выполнения?
поскольку обьем файлов большой я не пойму когда он заканчивает работу.
1.мне не нужно знать точное время.мне нужно только знать что работа закончена.
логически я предположу что если внизу вывести
echo "Все писец работа закончена";
то это должно появиться только после выполнения этого скрипта?
или не факт
$files=glob($_SERVER['DOCUMENT_ROOT'].'/browse/browse/*');
foreach($files as $f)
{
$t = file_get_contents($f);
$t = str_replace("shit","гавно",$t);
file_put_contents($f,$t);
} -
4 июня 2009 г. 9:12, спустя 23 минуты 31 секунду
похоже написал полную куйню.браузер же всеравно нужно как то обновлять.
может рефреш как то можно сделать после окончания работы скрипта -
4 июня 2009 г. 9:24, спустя 11 минут 24 секунды
Header('Location: index.php'); в место индекса скрипт свой впиши -
4 июня 2009 г. 10:08, спустя 44 минуты 23 секунды
Header же после окончания не вставишь.только вверх странички -
Страницы: ← Следующая страница →
Пожалуйста, авторизуйтесь, чтобы написать комментарий!