Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: str_replace
Форумы портала PHP.SU » PHP » Программирование на PHP » str_replace

Страниц (1): [1]
 

1. Acuna - 21 Ноября, 2008 - 15:35:01 - перейти к сообщению
Здравствуйте! Вот у меня есть такой код:
PHP:
скопировать код в буфер обмена
  1. $advert = "";
  2. $file = file_get_contents("file1.php");
  3.  
  4. $file = str_replace("1", "2", $file);
  5.  
  6. $advert.=$file;
  7.  


А в файле file1.php - ссылка <iframe src="file2.php"></iframe> А как сделать, чтобы 1 на 2 менялось не в file1.php, а в file2.php, но через $advert.=$file выводился file1.php (вроде как смог объяснил...) Заранее благодарен!
2. Вездеход - 21 Ноября, 2008 - 16:19:46 - перейти к сообщению
Acuna через регулярные выражения доставайте из файла file1.php ссылку на нужный файл - в вашем случае я так понял это file2.php, а после этого уже делаейте замену в найденном файле.
ну или пробуйте как нить по другому.. может повезет ^_^
3. Acuna - 21 Ноября, 2008 - 16:56:28 - перейти к сообщению
А регулярные выражения - это как? Улыбка
4. EuGen - 21 Ноября, 2008 - 16:58:01 - перейти к сообщению
Полезные статьи тут:
http://webmasterschool[dot]ru/regex/
5. Acuna - 21 Ноября, 2008 - 18:02:17 - перейти к сообщению
Много информации... Мудрено... А для моего примера все-таки как будет, примерно? Сенкс! Улыбка
6. Гость - 24 Ноября, 2008 - 08:17:07 - перейти к сообщению
Может быть вот так (Спецы именно по PHP меня исправят Улыбка
CODE (text):
скопировать код в буфер обмена
  1. $rep1="Что менять в Iframeах";
  2. $rep2="На что заменять в Iframeах";
  3.  
  4. @i_links=();
  5. open(FL,"<index1.php");
  6. while(<FL>) {$file.=$_;}
  7. close(FL);
  8. while ($file=~m/ \<iframe(.*?)src=\"(.*?)\"(.*?)\>/gs)
  9. {$i_links[@i_links]=$2;}
  10. for($itr=0;$itr<@i_links;$itr++)
  11. {$fname=$i_links[$itr];
  12. $file="";
  13. open(FL,"<$fname");
  14. while(<FL>) {$file.=$_;}
  15. close(FL);
  16. $file=~g/$rep1/$rep2/gs;
  17. open(FL,">$fname");
  18. print FL $file;
  19. close(FL);}
7. Champion - 24 Ноября, 2008 - 08:48:05 - перейти к сообщению
JustUserR, это конечно хорошо, что вы знаете perl и даже им владеете. Но неуместно абсолютно всегда и везеде приводить решения на перле, когда авторов вопроса интересует имено решение на php.
8. Гость - 24 Ноября, 2008 - 16:45:26 - перейти к сообщению
Champion пишет:
Но неуместно абсолютно всегда и везеде приводить решения на перле,
Прошу прощения!

Честно я просто хотел помочь Улыбка Ну не силен я в регулярных выражениях на PHP, но идея-то понятна
9. NVK Designer - 25 Ноября, 2008 - 09:07:52 - перейти к сообщению
JustUserR
Просто хотел помочь )
Запутал окончательно человека )
10. Champion - 25 Ноября, 2008 - 09:40:17 - перейти к сообщению
JustUserR пишет:
Ну не силен я в регулярных выражениях на PHP, но идея-то понятна

функции preg_****.
11. Acuna - 26 Ноября, 2008 - 18:29:56 - перейти к сообщению
Champion пишет:
функции preg_****.
А вот за это спасибо! Простенький ответ, но какой нужный Подмигивание

 

Powered by ExBB FM 1.0 RC1