Квартиры, дома, земельные участки Краснодарского края без посредников. Объявления собственников недвижимости.
Реклама здесь
Главная
Примеры PHP Примеры JavaScript Примеры Ajax Примеры CSS,HTML

Активизация кода на странице

Активизация ссылок

Следующий пример делает все ссылки активными, т.е. теперь на них можно нажать.:


<?php
## "Активизация" HTML-ссылок.
$text 'Ссылка: (http://kdg.htmlweb.ru), www.vsetaksi.ru?"a"=b, http://sborki.ru.';
echo 
hrefActivate($text);

// Функция обратного вызова для preg_replace_callback().
function hrefCallback($p) {
  
// Преобразуем спецсимволы в HTML-представление.
  
$name htmlspecialchars($p[0]);
  
// Если нет протокола, добавляем его в начало строки.  
  
$href = !empty($p[1])? $name "http://$name";
  
// Формируем ссылку.
  
return "<a href=\"$href\">$name</a>";
}

// Заменяет ссылки на их HTML-эквиваленты ("подчеркивает ссылки").
function hrefActivate($text) {
  return 
preg_replace_callback(
    
'{
      (?:
        (\w+://)          # протокол с двумя слэшами
        |                 # - или -
        www\.             # просто начинается на www
      )
      [\w-]+(\.[\w-]+)*   # имя хоста
      (?: : \d+)?         # порт (не обязателен)
      [^<>"\'()\[\]\s]*   # URI (но БЕЗ кавычек и скобок)
      (?:                 # последний символ должен быть...
          (?<! [[:punct:]] )  # НЕ пунктуацией
        | (?<= [-/&+*]     )  # но допустимо окончание на -/&+*
      )
    }xis'
,
    
"hrefCallback",
    
$text
  
);
}   
?>
Скопировать в буфер

Активизация E-mail -ов


<?php
$text 
"Привет от somebody@mail.ru, а также от other@mail.ru!";
$html preg_replace(
  
'/(\S+)@([a-z0-9.]+)/is',     // найти все E-mail
  
'<a href="mailto:$0">$0</a>'// заменить их по шаблону
  
$text                         // искать в $text
);
echo 
$html;
?>
Скопировать в буфер
кредит на жилье
кондиционер кассетный

© Copyright 2008-2012 by KDG