[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Вопрос по preg_replace :)
Gokusa
необходимо поменять ссылки с локальных типа \cms\css\style.css
на глобальные типа http:\\ бла бла\\ блабла\ cms\css\stytle.css

пишу :
$f=file_get_contents('http://chip-and-dail.ru/');
$preg="~href=(.*?)>~is";
preg_match_all($preg,$f,$arr);
$i=0;
foreach($arr[1] as $val)
{echo ++$i."<br>"; if ($i==22) break;// потому что на 22 члене выдаёт ошибку
$f=preg_replace("'#".$val."#'","www.chip-and-dail.ru/".$val,$f);
}
//echo preg_replace($p,"45",$f);
echo $f;

.........................
в общем код страницы вообще не меняется.
вопрос таков:я в правильном направлении копаю,мелочи вроде пробелов слешей и пр пока не учитываем.
правильно ли использую preg_replace ?

 ! 

М
Используйте специальны теги подсветки кода
DedMorozzz




Спустя 7 минут (18.08.2010 - 14:04) DedMorozzz написал(а):
Так как ты делаешь сейчас - врядли получишь желаемый результат. У тега А, есть больше чем 1 атрибут.

Спустя 5 минут, 50 секунд (18.08.2010 - 14:10) Gokusa написал(а):
да это понятно-я же пишу что мелочи пока не важны.
дело в том что ,вообще ни одну ссылку не изменяет

Спустя 9 минут, 3 секунды (18.08.2010 - 14:19) DedMorozzz написал(а):
покажи в каком виде ссылки на выгребаемой странице

Спустя 2 минуты, 49 секунд (18.08.2010 - 14:22) Gokusa написал(а):
извини убежал.
вечером выложу

Спустя 3 дня, 20 часов, 16 минут, 54 секунды (22.08.2010 - 10:39) mad/crs написал(а):
может как-то так:

$f = preg_replace('#href=[\'\"]*([^\'\"\ ]*)#is', 'www.chip-and-dail.ru/$1',$f);

а может проще порубить explode('href=',strtolower($f)) и после простым перебором анализировать (думаю PHPшке немного легче будет на больших фаилах) smile.gif
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.