Модераторы: Aliance, skyboy, MoLeX, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Замена URL адреса картинки 
V
    Опции темы
MoLeX
Дата 19.10.2010, 10:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Местный пингвин
****


Профиль
Группа: Модератор
Сообщений: 4076
Регистрация: 17.5.2007

Репутация: нет
Всего: 140



Добрый день.
Есть некий текст (красным отмечены не постоянные данные, т.е. они могут меняться)
Цитата

<p> This is a 'superglobal', or automatic global, variable. This simply means that it is available in all scopes throughout a script. There is no need to do <strong class="command">global $variable;</strong> to access it within functions or methods.

<img alt="" src="http://127.0.0.1/admin/ckfinder/core/connector/php/connector.php?command=Thumbnail&amp;type=Images&amp;currentFolder=%2Fbanner%2F&amp;langCode=ru&amp;hash=a68655d5d08e9b12&amp;FileName=1287468124.jpg" style="width: 46px; height: 100px;" /></p>


Необходимо преобразовать URL данной картинки в нечто такое:
 

То есть, из строки нужно взять две части: currentFolder и FileName


--------------------
Amazing  smile 
PM MAIL WWW ICQ   Вверх
patap
Дата 19.10.2010, 11:19 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 893
Регистрация: 7.5.2005
Где: Украина, Зп

Репутация: 5
Всего: 40



Код

  $text = 'text here';

  $regexp = '#(http://.*?)/.*?currentfolder=(.*?)&.*?filename=(.*?\.[a-z]{1,4})#i';

  preg_match($regexp, $text, $matches);
  $url = urldecode($matches[1] . $matches[2] . $matches[3]);
  echo $url;



эм.. или нужно в тексте сделать замену ссылки?

так можно:
Код

  $regexp = '#(http://.*?)/admin/.*?currentfolder=(.*?)&.*?filename=(.*?\.[a-z]{1,4})#i';

  function url($matches) {
    return urldecode($matches[1] . 'img' . $matches[2] . $matches[3]);
  }
  
  $text = preg_replace_callback($regexp, 'url', $text);


Это сообщение отредактировал(а) patap - 19.10.2010, 11:38


--------------------
На боку кобура болталась, сзади шашка отцовская звякала. 
Впереди меня все хохотало, а позади все плакало (с)
PM MAIL ICQ   Вверх
enoff
Дата 19.10.2010, 14:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 297
Регистрация: 30.6.2010
Где: Санкт-Петербург

Репутация: 1
Всего: 13



Код

$regexp = '#(http://.*?)/admin/.*?currentfolder=(.*?)&.*?filename=(.*?\.[a-z]{1,4})#ie';
$text = preg_replace($regexp, "urldecode('$1'.'img'.'$2'.'$3')", $text);

а можно без callback функции обойтись smile 

Это сообщение отредактировал(а) enoff - 19.10.2010, 14:06
PM MAIL ICQ Skype GTalk   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Тексты | Следующая тема »


 




[ Время генерации скрипта: 0.0935 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.