Здравствуйте. Мои нулевые знания в php не позволяют решить, на первый взгляд, довольно простую проблему. Цель: Запилить код, анализирующий УРЛ страниц сайта и если УРЛ содержит определённый набор символов - выводит соответсвующий результат. Для чего: Есть сайт с большим числом однотипных страниц с указанием региона. Необходимо, чтобы в зависимости от УРЛ (лучше если от его части) выводилось название региона. Можно конечно перелопачивать много страниц сайта, но проще вставить код (сниппет) в "шаблон". (код менять проще чем открывать/менять/сохранять страницы). Глабально возможно два варианта работы: 1) Полный перебор страниц. 2) Разбиение на блоки по алфавиту. (что возможно более производительно) Накидал примерную блоксхему Извините, если она не доконца понятна - не программер я. Если с полным решением помочь маловероятно - то прошу, ткните носом хотябы в возможность анализа урла. Типа IF $url=..... Echo ' такой-то текст' Заранее спасибо, даже за "пошелнафик!" )
бла бла бла, запомни, лучше всего суть дела помогает понять просто пример, что на входе, что на выходе, только конкретно, а не: Код (Text): IF $url=..... Echo ' такой-то текст' а вообще есть функция такая - parse_url http://php.ru/manual/function.parse-url.html посмотри, может поможет, а если нет, разбирай URL при помощи регулярного выражения.
Спасибо! На парсилку смотрел, но не понял, что с ней делать. Пардоньте, мое нежелание изучать все особенности php. По аналогичному примеру может быть и осилил бы, но с нуля сложновато. Если просто то нужно: " Если УРЛ=http://site.ru/abaza.html то выводим "Абаза (Республика Хакасия)", Если УРЛ=http://site.ru/amursk.html то выводим "Амурск (Хабаровский край)", и т.д. " Кстати, рабочее решение готов "продонатить". Только размер бонуса сложно определить. Не думаю, что тут что-то сложное для знающего человека. Буду рад предложениям.
Код (PHP): $url = 'http://site.ru/abaza.html'; $url_data = parse_url($url); // получаем массив $file_name = $url_data['path']; // получаем из массива тот элемент в котором содержится /abaza.html $word = substr($file_name, 1, strripos($file_name, '.')-1); // удаляем первый символ / и .html // а если быть точным, не удаляем, а получаем новую строку без этих символов echo $word;
спасибо! Приблизительно понял как парсилка работает. Т.е. на выходе мы получим "abaza". Останется только задать соответствие в другом массиве "abaza => Абаза " сделать так... чтобы сайт не повесился от перебора тыщи страниц ))) Буду ковыряться. На "пивко" подкинуть? Ладно. Походу не всё так просто как представлялось. А раз задача сложная - она должны быть соответсвенно оплачена. Остаётся решить на сколько всё это целесообразно.
Пока нет. Буду думать о целесообразности данной разработки и соответсвенно о размере вознаграждения. Если что - обязательно дам знать. Пока тему можно прикрыть. PS. всё оказалось сложнее чем думалось.