Всем доброго времени суток! У меня возник вопрос, по работе с текстовым файлом. Есть файл, в который записана информация вот в таком виде: http://webworth.info/interzarabok.hut2.ru http://www.tatlia.com/interzarabok.hut2.ru http://www.estibot.com/appraise.php?a=a ... ok.hut2.ru http://www.ks1234.com/alexa/index.asp?u ... ok.hut2.ru http://www.sitonomy.com/?url=interzarabok.hut2.ru http://judgespot.com/review/interzarabok.hut2.ru http://whois.domaintools.com/interzarabok.hut2.ru ...................................................................и так далее. Как осуществить замену адреса interzarabok.hut2.ru на любой другой? То есть, ввести в форму какой либо адрес и он записался вместо этого, во все строки текстового файла. Заранее очень благодарен за помощь!
Как происходит замена значений разобрался, но ведь функция str_replace() работает лишь с одной строкой. А у меня их более трех сотен. То есть мне нужна функция, для работы с массивом.
Ты говоришь, что вся твоя информация записана в файл. Значит можно получить информацию не в виде массива, а в виде одной большой длинной строки, вместе с переносами. Например, с помощью функции file_get_contents() Списки всех имеющихся в php функций есть на сайте разработчиков: http://www.php.net .
Ну да. Вообще как вариант подошло. Сделал скрипт вот такого вида: <?php $urls = file_get_contents('urls.txt');/*выводим текстовый файл в одну строку*/ $str1 = "interzarabok.hut2.ru"; /*значение которое следует заменить в строке*/ $str2 = $_POST["url"];/*получили значение из формы*/ $rezult = str_replace($str1, $str2, $urls);/*замена значений*/ print $rezult;/*вывели все дело на экран*/ ?> Конечно на выходе, смотрится как-то безобразно. Весь итог в переменной $rezult выводится в одну строку.
Естественно. Браузеру до фонаря, что в строке есть переносы строк. Браузеры их не отображают. Посмотри в браузере исходный код страницы и убедись, что переносы строк там на самом деле есть. Для переноса строки в браузере используется тег <br /> Чтобы вывод был разбит по строкам в браузере - нужно заменить все переводы строк (символ "\n" или "\r\n") на <br /> . Это можно сделать и с помощью того же str_replace(), но вообще для этого существует специальная функция в php: nl2br() В твоём случае, вывод может быть следующим: PHP: <?php // ... print nl2br($rezult); ?>